tmux Config: Entenda o Arquivo de Configuração + Exemplos de Personalização

tmux Config: Entenda o Arquivo de Configuração + Exemplos de Personalização

O tmux é um multiplexador de terminal muito conhecido, que permite executar várias sessões em uma única janela. Além disso, ele também permite alternar facilmente entre uma sessão e outra, desanexando ou reanexando-as.

Além dessas funcionalidades padrão do tmux, você também pode personalizá-lo para que ele combine melhor com seus projetos.

Neste tutorial, vamos explicar como a personalização do tmux config pode facilitar o seu trabalho e também apresentar as opções configução dele.

O arquivo tmux config

Você pode configurar o ambiente tmux com a ajuda de um arquivo de configuração do sistema. Para isso, o primeiro passo é fazer login no seu servidor privado virtual via SSH e criar o arquivo tmux.conf. Você pode acessar seu VPS usando o PuTTY SSH. Depois, adicione nele os comandos de configuração que desejar.

Outra opção mais fácil é se conectar ao SSH diretamente pelo navegador, usando o nosso terminal — com essa opção você não precisa usar um software separado para se conectar:

Vale ressaltar que a configuração pode ser global ou local, dependendo da localização do arquivo. Se você precisa de um arquivo de configuração local, crie-o no diretório principal com o seguinte comando Linux:

touch ~/.tmux.conf

Mas se você quiser criar um arquivo de configuração global do tmux, envio-o para o diretório /etc:

touch /etc/tmux.conf

Agora, adicione a configuração desejadas ao arquivo tmux.conf. Depois, salve o arquivo e saia do editor de texto. As alterações serão aplicadas na próxima vez que você iniciar o tmux.

Opções de Configuração do tmux config

O tmux tem várias teclas de atalho e funções que podem não agradar a todos os usuários. Ao configurar o tmux, você pode personalizar os atalhos e diferentes funções para ficarem de acordo com seu fluxo de trabalho e suas preferências.

Além dos atalhos e opções, você pode alterar a aparência do seu terminal tmux. Por exemplo, é possível personalizar seu esquema de cores ou definir uma cor de fundo.

Por fim, os usuários podem configurar scripts personalizados ou comandos para serem executados quando o tmux for iniciado. Isso pode ser útil para ambientes pessoais de desenvolvimento, ajudando você a automatizar determinadas tarefas e garantindo que você não perca nenhum trabalho. 

Vamos conferir agora as três principais categorias de configuração:

Opções de Servidor e Sessão

É preciso definir as opções do servidor ao iniciar o tmux, pois elas afetam todas as sessões. Exemplos de opções de servidor são:

  • Tipo de terminal padrão
  • Número máximo de sessões
  • Localização do soquete para conexão ao servidor tmux

Use o comando set-option -s  para aplicar as opções do servidor.

As opções de sessão, por sua vez, afetam o comportamento de uma determinada sessão. Algumas das opções de sessão mais comuns são:

  • Nome das sessões
  • Diretório de trabalho inicial
  • Layout padrão da janela

Para definir opções de sessão, use o comando set-option .

Opções do Usuário

Com o tmux, os usuários podem definir configurações personalizadas, que podem modificar as opções de painel, janela, sessão ou servidor. Vale lembrar que todas as opções do usuário são strings e devem ser prefixadas com o símbolo @. Além disso, as opções do usuário podem armazenar valores personalizados de scripts.

Opções de Janela e Painel

O tmux oferece muitas opções de configuração que permitem aos usuários personalizar a aparência de suas janelas e painéis. As opções de painel também podem ser herdadas das opções de janela. Consequentemente, os usuários têm a possibilidade de definir qualquer opção de painel como uma opção de janela, e o tmux aplicará essa configuração a todos os painéis. 

Exemplos de Configuração do tmux

Vamos dar uma olhada em alguns dos exemplos mais populares de configuração do tmux. 

Alterar o Prefixo Padrão

Uma das opções de configuração mais importantes do tmux é o prefixo. O atalho padrão do prefixo é Ctrl + B. Para enviar um comando ao tmux, os usuários precisam pressionar Ctrl + B e, em seguida, o comando desejado.

A chave de prefixo pode ser configurada facilmente. No exemplo a seguir, vamos alterar o prefixo de Ctrl + B para Ctrl + A. Para fazer isso, basta abrir o arquivo de configuração do tmux com o seu editor de texto preferido:

sudo nano ~/tmux.conf

Depois, cole o seguinte código:

# Change prefix from 'Ctrl+B' to 'Ctrl+A'
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix

Salve as alterações e inicie uma nova sessão tmux.

Usar o Modo de Mouse

O modo mouse permite que os usuários usem o mouse para interagir com janelas e painéis do tmux. Quando esse modo é ativado, os usuários podem redimensionar janelas e painéis e rolar pela saída das sessões do tmux.

É importante lembrar que o suporte ao mouse é desativado por padrão. Para ativá-lo, abra o arquivo de configuração:

sudo nano ~/.tmux.conf

Após, cole o código abaixo e salve as alterações:

# Enable mouse mode
set -g mouse on

Definir Dois Prefixos

É possível ter várias chaves de prefixo no tmux. Essas chaves podem ser útil caso você queira usar uma chave de prefixo diferente em vários contextos ou ter uma chave de prefixo como backup.

Para exemplificar, vamos habilitar os prefixos Ctrl + A e Ctrl + B. Abra o arquivo de configuração e adicione os seguintes comandos tmux: 

# Enable two prefixes
set-option -g prefix C-a
set-option -g prefix2 C-b

Alterar o Comportamento Padrão do Servidor

Por padrão, o servidor tmux será encerrado quando não houver sessões ativas. Para evitar isso, é possível desativar a opção exit-empty usando o seguinte comando:

#Disable exit-empty
set -s exit-empty off

Começar a Contar Números de Janelas e Painéis (Índice-Base) a partir de 1

Ao iniciar o tmux, você notará que os números da janela e do painel começam em zero, o que pode ser complicado e confuso. Felizmente, é possível definir o índice base para começar a contar a partir de um. Basta adicionar o seguinte código ao seu arquivo de configuração do tmux:

# Start counting pane and window number at 1
set -g base-index 1
setw -g pane-base-index 1

Desativar a Renomeação Automática

A renomeação automática irá renomear uma janela tmux usando o formato especificado pela opção  automatic-rename-format. Para desativar a renomeação global automática no tmux, adicione a seguinte linha ao arquivo de configuração global:

# Disable automatic renaming
set-option -wg automatic-rename off

Salve as alterações e inicie uma nova sessão tmux.

Deixar o Fundo do Painel Atual Branco

Use o comando abaixo para definir a cor de fundo do painel atual para branca:

# Change the background color to white
set -g window-active-style bg=white

Também é possível ajustar as cores do painel com o seguinte código:

# Change pane colors
set -g pane-active-border fg=red
set -ag pane-active-border bg=magenta

Como Configurar o tmux para Permitir Copiar e Colar Entre o Sistema e as Áreas de Transferência do tmux

Por padrão, o tmux usa sua área de transferência para copiar e colar texto em uma sessão. Isso significa que os usuários não podem colar texto copiado do tmux em uma janela externa.

Porém, é possível configurar o tmux para permitir copiar e colar entre a área de transferência do sistema e a área de transferência do tmux. Para fazer isso, instale o xclip, que permite a comunicação entre as áreas de transferência do tmux e do sistema.

Confira abaixo o passo a passo de configuração do tmux para permitir a ação “copiar-colar”:

1. Instale o xclip:

sudo apt-get install xclip

2. Adicione as seguintes linhas ao seu arquivo de configuração do tmux:

# Use xclip to copy and paste with the system clipboard

bind C-c run "tmux save-buffer - | xclip -i -sel clip"

bind C-v run "tmux set-buffer $(xclip -o -sel clip); tmux paste-buffer"

Essa configuração usa C-c para copiar o texto selecionado para a área de transferência do sistema e C-v para colar da área de transferência do sistema no tmux.

3. Recarregue sua configuração do tmux com o seguinte comando:

tmux source-file ~/.tmux.conf

Após seguir esses passos, você poderá copiar e colar texto entre o tmux e a área de transferência do sistema. Sempre que você pressionar o prefixo seguido de Ctrl + C, o xclip capturará o buffer tmux atual. Quando quiser colar o conteúdo, basta pressionar o prefixo seguido por Ctrl + V

Conclusão

Como vimos neste tutorial, o tmux é uma excelente ferramenta para qualquer gerenciamento de servidor baseado em Unix. Isso porque, com as opções de configuração corretas, os usuários podem personalizar o painel para atender até mesmo aos mais altos padrões.

Durante a leitura deste artigo, você aprendeu um pouco sobre as principais categorias de configuração do tmux e viu alguns exemplos úteis de configuração. Mostramos também como você pode fazer o processo de instalação do xclip para permitir copiar e colar dados entre as áreas de transferência do sistema e do tmux.

Caso tenha alguma dúvida ou sugestão, você pode deixá-la na seção de comentários logo abaixo deste tutorial.

Perguntas e Respostas sobre o tmux Config

Confira as perguntas mais frequentes sobre a configuração do tmux. 

Onde Encontrar o Arquivo tmux Config?

O arquivo de configuração do tmux está geralmente localizado em ~/.tmux.conf. Esse arquivo contém um conjunto de comandos executados sempre que o tmux é iniciado, permitindo que os usuários o personalizem. Caso o arquivo  ~/.tmux.conf nmão exista, basta criá-lo executando o comando  touch ~/.tmux.conf. Essa comando criará um arquivo de configuração vazio que os usuários poderão editar.

O Que é SETW no tmux?

O SETW (ou set-window-option) é usado para configurar várias novas opções de janela, como mode-keys, synchronize-panes, allow-rename e main-pane-height.

Como Encontrar um Prefixo tmux?

No tmux, o prefixo é a combinação de teclas que você pressiona antes de emitir um comando. O prefixo padrão é Ctrl + B, mas você pode personalizar para qualquer outra combinação. Para descobrir qual é o prefixo atual, tente pressionar Ctrl + B. Se não funcionar, abra o arquivo tmux.conf e procure pela linha set-option -g prefix.

Author
O autor

Bruna Vidanya

Bruna Vidanya é tradutora na Hostinger Brasil. É graduada em Letras Tradução Inglês pela Universidade de Brasília e já foi estagiária tradutora no Senado Federal. Teve a sua primeira tradução – um livro infanto-juvenil – publicada pela Livraria Senado Federal. É apaixonada por tecnologia e agora demonstra essa paixão, com muito carinho, escrevendo e traduzindo artigos para a Hostinger. Nas horas vagas, Vidanya ama ficar com os seus três cachorrinhos: Madonna, Snoop e Scooby-Doo, além de ver séries (as sitcoms são as suas favoritas). Um fato curioso sobre a autora: seu primeiro bichinho de estimação foi um galo Garnisé, chamado Chico Liro.