Blog

#bash#linux#tmux#shellscript

Instalando tmux aprendendo basico

Primeiros passos no tmux: o que é, por que usar, a interface e os atalhos básicos para criar e dividir panes.

3 min de leitura

O que é Tmux

Página de manual do tmux (man tmux)

Tmux é um emulador de terminal open source Unix like. Ele permite você ter vários terminais em instancias e servers.

o Tmux não se resume a só isso mas vamos focar nessas duas coisas.

Porque usar?

Se você utiliza o terminal uma hora ou outra sua necessidade por múltiplas janelas irá crescer ou a vontade de ter

  1. Workspace/instancia para uma sessão SSH que nunca desconecta,
  2. Workspace para seu projeto frontend,
  3. Workspace para o projeto backend,
  4. Workspace para debugar um app linux que você use diariamente como discord ou browser…

Um pouco sobre a interface

Diagrama da documentação do tmux indicando outside terminal, pane, active pane border, pane border e status line

Não vamos se aprofundar muito para não ficar massivo de ler

Nesse exemplo da documentação official vemos como é a interface tmux são eles:

  • outside terminal: O primeiro terminal base da sua maquina, assim que podemos colocar um parâmetro na config zshrc para o tmux abrir automaticamente veremos mais a frente.
  • active pane border: É a sinalização em qual pane você está, ele fica da cor verde ou cinza
  • pane: É seu terminal atual, você pode abrir outra workspace/Windows ou pode abrir outras panes ao lado
  • status line: É o “menu” de operações do seu tmux, ele muda de cor quando e avisa quantidade de workspaces, hora e data e é altamente configurável utilizando plugins e scripts.

Criando nosso primeiro workspace e abrindo múltiplos panes

Logo após instalar o tmux via seu packager manager:

sudo pacman -Sy tmux  // ou // sudo apt-get install -y tmux

e rodar o comando “tmux” no terminal você irá dar de cara com a interface vazia só com o seu status line.

tmux recém-aberto, apenas com a status line

Aqui vai uma pequena lista dos comandos para decorar de agora, usando o comando baseado na documentação ou use a bind “Control-b ?”.

tmux lsk -N|morey

Lista de atalhos do tmux exibida por tmux lsk -N

Primeiros vemos a bind C-B essa é nosso PREFIX, então como visto toda bind preceder por C-b logo é necessário sempre digitar o PREFIX e depois sua opção.

Vamos Splitar a window/pane em vertical com a combinação:

PREFIX(CONTROL+B) + "

tmux com a janela dividida em dois panes, um acima do outro

Depois podemos quebrar na horizontal usando

PREFIX(CONTROL+B) + %

tmux com o pane de baixo dividido lado a lado

se quiser a pane fechar é só usar

PREFIX(CONTROL+B) + x

Status line do tmux pedindo confirmação para fechar o pane

E vemos a cor da barra mudando para a confirmação se você quer matar o pane 2 e você pode confirmar digitando Y e dando enter.

Sessão do tmux com várias janelas, incluindo o btop

Bom nesse pequeno tutorial vemos os primeiros passos no tmux de uma forma prática e mais rápida sem entrar em assuntos complexos.

Com o engajamento do meu (blog =! esforço ) futuramente eu possa trazer meus dotfiles com a minha config baseado no oh my tmux.

Eu mesmo acho bem complexa e com configurações muito longas… porem o resultado de um bom Setup muda completamente como programar e navegar.