Tmux – Divindo o terminal (parte 2)

Já há algum tempo que eu escrevi a primeira parte deste tutorial de uso do Tmux, um gerenciador de janelas para terminal. Na ocasião eu apresentei alguns conceitos básicos do uso diário como criar e remover sessões, janelas e painéis, redimensionar e alternar painéis e janelas etc. Se você não evoluiu no estudo sobre o tmux segue então a oportunidade com mais algumas dicas de uso.

Uma pequena revisão dos conceitos

Para simplificar vamos fazer um cenário prático, onde você terá uma sessão do tmux iniciada com um editor de textos aberto.

$ tmux
$ vim meuarquivo.py

Suponhamos agora que você queira manter um terminal aberto abaixo deste editor, onde você fará testes de execução, realizar os commits no seu controle de versão, compilar etc.

Abra um novo painel com o atalho [PREFIXO] “ e pronto, você terá sua tela dividida horizontalmente em dois painéis. O editor no painel superior e a linha de comandos no inferior.

Caso queira inverter a ordem (editor em baixo e linha de comandos em cima) use o atalho [PREFIXO] { ou [PREFIXO] }, ou ainda [PREFIXO][CTRL]o.

Para alternar entre os painéis use [PREFIXO][SETAS], ou [PREFIXO][PREFIXO]

Se você necessitar um espaço maior para edição e temporariamente não precise da linha de comandos use [PREFIXO] z para dar “zoom” no editor e quando precisar da linha de comandos novamente use o mesmo atalho para voltar a configuração original com os dois painéis.

Para finalizar esta breve revisão, caso você precise manter ambos os painéis visíveis mas com um espaço maior para o editor é possível usar o atalho [PREFIXO][CTRL][SETA ACIMA] ou [PREFIXO][CTRL][SETA ABAIXO] para alterar a proporção entre os paineis. Se as janelas estivessem lado-a-lado bastaria usar as setas a direita ou esquerda conforme desejado.

Usando a linha de comandos do Tmux

Para acessar os recursos do Tmux há duas maneiras. Você usa as teclas de atalho pre-definidas, ou digita-se a ação desejada na linha de comandos do tmux (veja que não estou falando da linha de comandos do seu sistema, mas do Tmux).

A vastidão de recursos e possibilidades que o Tmux possui impede que todos sejam mapeadas em teclas de atalho, por isso há uma linha de comandos especial, mas se você desejar eles podem ser mapeados nas teclas que você achar melhor.

A minha ideia não é apresentar todos os recursos, mas apenas mostrar que existem e deixar que você por conta própria descubra os demais, já que uma consulta no seu manual pode revelar segredos muito legais que você certamente gostará de conhecer.

Para acessar a linha de comandos do Tmux use o atalho [PREFIXO]: (observe que seu cursor de digitação foi para barra de status do Tmux). Uma vez que você digite algo e tecle [ENTER] a ação especificada será executada.

Todas as ações que vimos até o momento usando teclas de atalho são nada mais que mapeamento dos comandos do tmux para estas teclas.

Por exemplo, para alternar entre os painéis, é possível abrir o prompt do tmux [PREFIXO]: e digitar o comando:

select-pane {destino}

Onde, {destino} pode ser “-D” (Down – baixo), “-U” (Up – cima), “-L” (Left – esquerda) ou “-R” (Right – direita) ou ainda o número direto do painel desejado com o parâmetro “-t”.

select-pane -t .1

O comando acima alterna para o painel “1”, lembrando que os painéis são numerados a partir de 0.

Habilitando o suporte ao mouse

Agora (os puristas me odiarão) se você estiver com o tmux aberto em um terminal dentro do seu ambiente gráfico é possível usar o mouse não só para redimensionar mas também para alternar entre os painéis.

Para ativar o mouse digite o seguinte comando na linha de configuração do tmux:

set-option -g mouse on [ENTER]

O “-g” indica que é para alterar globalmente e não apenas nesta janela. Experimente agora clicar com o mouse, nos paineis, arrastar a borda divisória deles etc.

Mais

O Tmux é uma ferramenta muito útil e há mais do que isso a se explorar. Consulte o seu manual, a tela de ajuda ([PREFIXO]?) e o Google que certamente esta vai se tornar uma ferramenta essencial para o seu dia a dia.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

This site uses Akismet to reduce spam. Learn how your comment data is processed.