Zellij é um novo multiplexador de terminal escrito em Rust

28 de abril de 2021

Zellij Frold Terminal Multiplexer

Zellij é um novo espaço de trabalho terminal e multiplexador (como tmux e screen) escrito em Rust, disponível para macOS e Linux. Entre suas características mais importantes estão um sistema de layout e plugins escritos em qualquer linguagem que compile webassembly.

Embora a ferramenta está pronta para uso diário, ainda é importante mencionar que agora ele tem o status beta, então pode acontecer algum um acidente ocasional. Também está faltando alguns recursos por enquanto (leia mais para detalhes).

Ao contrário de outros multiplexadores de terminal, como tmux ou screen, Zellij vem com uma interface do usuário amigável fora da caixa, mostrando uma barra de status na parte inferior da tela com os atalhos e dicas disponíveis para usar esta ferramenta. A barra de status (bem como a barra de tabulação) é implementada como um plugin e pode ser facilmente desativada quando você estiver acostumado aos atalhos de teclado.

Quando você inicia Zellij, notará que ele mostra os atalhos de teclado disponíveis que permitem bloquear o layout, acessar as opções de painel, opções de tabulação, redimensionar, rolar e sair (veja captura de tela no topo deste artigo). Quando você usa um desses atalhos de teclado, digamos o atalho do painel (Ctrl + p), a barra é alterada para os atalhos de teclado disponíveis para painéis, como criar um novo painel, mover entre os painéis, fechar o painel ativo e assim por diante:

Zellij StatusBar

Além de ser fácil de usar, Zellij também tenta inovar na maneira como organiza e redimensiona os painéis. Você não precisa descobrir sozinho se quiser criar uma divisão vertical ou horizontal. Em vez disso, o aplicativo procura o melhor lugar para abrir um novo painel. Também não há limitações ao redimensionar os painéis

Os atalhos de teclado, bem como o layout inicial usado por Zellij quando ele é iniciado, pode ser configurado. Você pode dar uma olhada nos atalhos de teclado padrão aqui e aqui está o layout padrão. Um modo TMUX integrado também estará disponível com a próxima versão Zellij, enquanto um recurso de teclado semelhante a tela está sendo desenvolvido.

Além da barra de status e barra de tabulação, Zellij também vem com um plugin chamado Strider, um clone do Ranger (Console File Manager), mas isso não funcionou corretamente para mim - em uma máquina que não carrega nada, e em outro não são carregados arquivos. Então, aqui está um gif desse recurso retirado do site Zellij:

zellij-strider

Recursos faltando / roadmap

Sendo novo, com a primeira versão alfa que está sendo feita em janeiro de 2021 (e o primeiro beta é apenas uma semana), a ferramenta não tem alguns recursos. O mais importante é definitivamente a falta de capacidade de desistir de sessões ativas e retomar-las mais tarde. O plano é implementar isso através de uma arquitetura cliente-servidor em que o cliente é o frontend que interage com o usuário, e o servidor é o back-end onde toda a magia acontece. Já existe um trabalho para implementar este recurso - você pode acompanhar seu progresso via esta solicitação de implementação.

O plano é também permitir a conexão a Zellij através do navegador, em vez de abrir um usuário de terminal, seja em uma máquina local ou remota.

Outras características no roadmap Zellij são a capacidade de compartilhar sessões com outras pessoas, suporte para várias janelas de terminal em todas as telas (que permite transferir painéis em diferentes janelas e telas, onde todos pertençam à mesma sessão), e layouts inteligentes (reorganizar inteligentemente o layout quando novos painéis são adicionados ou a janela é redimensionada).

Outros recursos ausentes no momento em que estou escrevendo isso (mas que deve ser implementado no futuro) incluem suporte de esquema de cores, suporte ao mouse, a capacidade de criar um arquivo de layout do layout atual, abrir uma nova guia com um layout específico. O suporte ao Windows também podeser implementado no futuro, tornando Zellij o primeiro multiplexador de terminal a ter suporte a Windows nativo.

Também vale a pena notar que atualmente Zellij é extremamente lento no WSL2.

Baixando Zellij

Baixar Zellij

Para instalar o binário do Zellij no Linux, basta extrair o arquivo baixado, cd na pasta onde você o extraiu e instalar o binário em /usr/local/bin usando:

Comandos para usar no terminal

sudo install zellij /usr/local/bin

Para configurar Zellij (Keybinds, layouts, plugins), confira sua documentação.

Esse post foi traduzido do site LinuxUprising.com pela rtland.team.

Linux Uprising Blog

Confira a versão original desse post em inglês:

Zellij Is A New Terminal Multiplexer Written In Rust
Propaganda
Propaganda