Zellij: Um workspace de terminal com tudo incluído

Zellij, um multiplexador de terminal baseado em Rust, está chamando atenção como uma alternativa mais amigável ao tmux, com recursos como painéis flutuantes, contexto por aba, plugins em sandbox e atalhos de teclado fáceis de descobrir. Fãs destacam melhorias no fluxo de trabalho, persistência de sessão e facilidade de configuração, enquanto céticos questionam se ele oferece o suficiente além de ferramentas já existentes como tmux, kitty, abas de terminal e gerenciadores de janelas em tiles. Também surgem preocupações sobre latência de entrada, uso de memória e conflitos de atalhos, ressaltando as trocas entre recursos modernos e a maturidade e ubiquidade de ferramentas estabelecidas.

Adoção geral vs. configurações tmux/screen/apenas terminal

  • Vários usuários relatam ter migrado do tmux para o Zellij nos últimos meses e estarem satisfeitos; outros o testaram brevemente e voltaram para o tmux.
  • O tmux continua valorizado por sua ubiquidade em sistemas remotos, maturidade e ferramentas poderosas de scripting/sessão (muitas vezes com tmuxp).
  • Alguns ainda preferem GNU screen ou Byobu (vistos como “apenas padrões de tmux/screen”).
  • Um grupo considerável acredita que o multiplexing pertence ao emulador de terminal ou ao gerenciador de janelas (por exemplo, Konsole, kitty, wezterm, WMs em tiles) e raramente vê necessidade além da persistência via SSH.

Painéis flutuantes e fluxos de trabalho “zellij run”

  • Painéis flutuantes são repetidamente descritos como o “recurso matador” do Zellij:
    • Editor em tela cheia com terminais efêmeros para tarefas em segundo plano (testes, k9s, shells) que podem ser alternados por atalhos.
    • Painéis flutuantes por aba mantêm tarefas relacionadas dependentes do contexto.
  • O comando zellij run --floating mais o “pressione Enter para executar novamente” é elogiado para execução de testes e comandos rápidos.
  • Os céticos argumentam que janelas/painéis/popups do tmux ou simplesmente alternar janelas oferecem benefícios semelhantes, questionando por que sobreposições seriam melhores do que janelas separadas.

Desempenho, latência e memória

  • As experiências divergem: alguns não percebem atraso na entrada; outros relatam latência notável e rolagem lenta em monitores grandes.
  • Há otimizações de desempenho em andamento em PRs upstream.
  • O uso de memória é controverso: alguns relatam que o Zellij usa cerca de 500MB e o consideram inutilizável; os mantenedores atribuem o comportamento em parte ao alocador do Rust e dizem que a memória acaba sendo liberada, mas os usuários continuam preocupados com vazamentos.

Interface, atalhos e usabilidade

  • O Zellij é elogiado pela facilidade de descoberta, configuração simples, atalhos contextuais visíveis e foco em previsibilidade.
  • A interface pode parecer grande demais ou ocupada demais; a documentação mostra como ocultar bordas e reduzir elementos visuais.
  • Atalhos no estilo tmux são suportados e considerados de primeira classe, facilitando a migração.
  • Outros reclamam que o Zellij captura atalhos demais e força um modelo de modo/desbloqueio, adicionando atrito.
  • Alguns observam conflitos dos atalhos padrão com Emacs/readline; remapeamento é comum.

Recursos, plugins e ecossistema

  • Recursos apreciados: restauração de sessão, plugins em sandbox (vistos como um ganho de segurança em comparação com os ecossistemas de plugins do tmux/nvim), painéis flutuantes/empilhados de verdade, suporte a multiplayer.
  • Críticas: o ecossistema de plugins e integrações avançadas (por exemplo, protocolo de imagens do kitty) ainda são mais fracos do que tmux + plugins.

Debates mais amplos sobre fluxo de trabalho

  • Discussões contínuas sobre se multiplexadores reinventam IDEs gráficas e se apenas o vim/neovim (com splits/abas/terminal) é suficiente.
  • Muitos veem detach/re-attach em hosts remotos como a única vantagem inequívoca de multiplexadores do lado do servidor, como tmux/Zellij.