Tmux é “pior é melhor”
(hiandrewquinn.github.io)O tmux é a melhor escolha?
Introdução ao tmux
- tmux é a sigla de "terminal multiplexer" e permite dividir o terminal em vários shells independentes
- Vem instalado por padrão no OpenBSD
- É útil para programadores que usam SSH com frequência
- Permite dividir a tela sem um ambiente gráfico
- É adequado para quem busca minimalismo digital
A opinião de Kovid Goyal
- Kovid Goyal é o desenvolvedor do software de ePub calibre e do emulador de terminal Kitty
- Goyal não gosta de tmux
- Em seu FAQ, ele expressa uma opinião negativa sobre o tmux
- Multiplexadores de terminal adicionam sobrecarga desnecessária
- O aumento da complexidade causa queda de desempenho
- É ineficiente em termos de energia e performance
- Tem um impacto negativo em todo o ecossistema
Experiência pessoal de uso
- O autor usa UNIX em casa e Windows no trabalho
- Em situações em que precisa usar SSH várias vezes, recorre com frequência ao tmux
- O tmux funciona em vários emuladores de terminal
- O Kitty precisa funcionar no sistema acessado remotamente
A filosofia "Worse is better"
- "Worse is better" está mais próxima de uma filosofia de gestão de produto do que de uma filosofia de software
- Ela enfatiza que é importante otimizar a funcionalidade central do software para os casos de uso mais comuns
- O autor pessoalmente gosta de VM, mas na prática usa tmux com mais frequência
Conclusão
- O autor usa principalmente acesso remoto a partir do Windows
- Ele decorou os atalhos do tmux
- Os atalhos do Kitty também são excelentes, mas o tmux é mais útil
Opinião do GN⁺
- O tmux é muito útil para desenvolvedores que usam SSH com frequência. Em especial, a capacidade de executar vários shells ao mesmo tempo é uma grande vantagem.
- Como aponta Kovid Goyal, multiplexadores de terminal podem afetar o desempenho, mas a maioria dos usuários provavelmente considerará seus benefícios mais importantes.
- Emuladores de terminal como o Kitty podem oferecer melhor desempenho, mas é difícil substituir a versatilidade e a praticidade do tmux.
- Para quem busca minimalismo digital, o tmux é uma ferramenta muito atraente. Ele oferece recursos poderosos mesmo sem ambiente gráfico.
- Usar tmux e Kitty juntos permite aproveitar ao máximo as vantagens de cada ferramenta. Por exemplo, é possível usar Kitty localmente e tmux em servidores remotos.
1 comentários
Opinião do Hacker News
Resumo da coletânea de comentários do Hacker News
"Não acho que analisar a entrada de teclado duas vezes seja uma grande fonte de desperdício de ciclos de CPU ou de consumo de bateria. O Kitty incorpora a maior parte das funcionalidades do tmux, mas isso não ajuda muito quem trabalha com SSH. Colocar tudo dentro do emulador de terminal parece um acréscimo desnecessário de funcionalidades."
"O verdadeiro motivo para precisar do tmux é a persistência remota. Não quero perder minha sessão do vim só porque a conexão com o servidor caiu."
"O recurso matador do tmux é manter o espaço de trabalho persistente, não apenas o shell. Kitty e screen não resolvem esse problema. Se existisse persistência de espaço de trabalho baseada no emulador de terminal, eu abandonaria o tmux."
"Kovid Goyal, o desenvolvedor do Kitty, não gosta do tmux. O Kitty inclui a maior parte dos recursos do tmux, mas não oferece persistência remota. Depender do emulador de terminal significa precisar criar nova memória muscular ao mudar para outro emulador."
"O uso básico de
screenoutmux(iniciar, criar e alternar janelas, reconectar) deveria fazer parte do kit de ferramentas de qualquer pessoa que precise acessar servidores via SSH. Especialmente em startups, é preciso entender os sistemas e trabalhar de forma criativa e eficiente.""É possível adicionar configurações em
~/.ssh/configpara multiplexar sessões SSH em uma única conexão. A primeira sessão usa autenticação com impressão digital, e depois disso é possível conectar sem autenticação por 300 segundos. Também dá para manter a sessão mesmo offline por meio do Tailscale.""O maior valor do SSH é que trabalhos longos podem continuar apesar de quedas de conexão. É extremamente frustrante quando um download longo está quase terminando e a conexão cai."
"Uso Windows como sistema operacional hospedeiro e trabalho no Linux. Uso tmux para rodar vários shells. Há problemas de desempenho, mas em termos de produtividade ele é muito útil."
"Para SSH remoto, uso configurações no .ssh/config para iniciar automaticamente um tmux remoto. Isso permite salvar o trabalho mesmo com conexão instável. Uso tmux todos os dias e não encontrei outra alternativa."
"A opinião do Kovid pode estar tecnicamente correta, mas está errada em termos de usabilidade. Os usuários preferem o que torna a vida mais simples. Tentei o zellij, mas voltei para o tmux. O tmux tem uma barreira de entrada menor."