Tmux

Domine sua Experiência Terminal com Tmux

Se você é um entusiasta do terminal ou um desenvolvedor experiente, provavelmente já experimentou a sensação de ter várias abas ou janelas do terminal abertas ao mesmo tempo. No entanto, gerenciar todas essas sessões pode se tornar uma tarefa desafiadora. É aqui que o Tmux entra em cena para simplificar e aprimorar sua experiência no terminal.

O que é o Tmux?

Tmux, ou Terminal Multiplexer, é uma poderosa ferramenta de linha de comando que permite dividir a tela do terminal em várias janelas e painéis, facilitando a execução de várias tarefas simultaneamente. Com o Tmux, você pode criar, redimensionar e alternar entre várias sessões do terminal sem esforço, tornando-o uma ferramenta indispensável para usuários de linha de comando.

Principais Recursos do Tmux:

  1. Sessões: O Tmux permite criar várias sessões do terminal, o que é útil para separar diferentes tarefas ou projetos. Você pode facilmente alternar entre essas sessões com alguns atalhos de teclado simples.
  2. Janelas: Dentro de cada sessão, você pode ter várias janelas, cada uma representando um ambiente de trabalho separado. Isso é útil quando você está trabalhando em vários projetos ao mesmo tempo e deseja manter cada um isolado.
  3. Painéis: As janelas podem ser divididas em vários painéis, permitindo executar várias tarefas dentro de uma única janela. Você pode redimensionar, mover e fechar esses painéis conforme necessário.
  4. Persistência: Uma das características mais úteis do Tmux é sua capacidade de manter sessões ativas, mesmo quando você fecha a conexão SSH ou encerra o terminal. Isso significa que você pode retomar seu trabalho exatamente de onde parou, sem perder o contexto.
  5. Personalização: O Tmux é altamente personalizável, permitindo que você configure atalhos de teclado, temas e layouts de acordo com suas preferências.

Como começar com o Tmux:

  1. Instalação: O Tmux está disponível nos repositórios de pacotes da maioria das distribuições Linux e pode ser instalado facilmente usando gerenciadores de pacotes como apt, yum ou pacman. Para usuários do macOS, o Tmux pode ser instalado via Homebrew.
  2. Comandos Básicos: Assim que o Tmux estiver instalado, você pode iniciar uma nova sessão com o comando tmux. Use Ctrl+b como prefixo, seguido por outros comandos para interagir com o Tmux. Por exemplo, Ctrl+b c cria uma nova janela, Ctrl+b % divide a janela verticalmente e Ctrl+b " divide a janela horizontalmente.
  3. Explorando Recursos Avançados: À medida que você se familiariza com o Tmux, pode explorar recursos mais avançados, como personalização de configuração, scripts de automação e integração com outras ferramentas.

Como eu utilizo:

Na minha máquina local, utilizo o Tmux com o prefixo padrão alterado para Ctrl+a para assim diferenciar as conexões remotas de SSH, que utilizam o prefixo padrão Ctrl+b. Ao final vou colocar em anexo o meu .tmux.conf

Conclusão:

O Tmux é uma ferramenta poderosa que pode aumentar significativamente sua produtividade no terminal. Com recursos como sessões, janelas e painéis, ele oferece uma maneira eficiente de gerenciar e organizar seu trabalho no terminal. Se você ainda não experimentou o Tmux, vale a pena dedicar um tempo para aprender, pois pode se tornar uma parte indispensável de seu fluxo de trabalho no terminal. Experimente e domine sua experiência terminal com o Tmux!

.tmux.conf

##### CLEANUP
set -g default-command /usr/bin/zsh
set -g default-shell /usr/bin/zsh
# Unbind the default tmux command prefix, CTRL+b.
unbind C-b
#####

##### PREFERENCES
# Use CTRL+a as our tmux command prefix.
set -g prefix C-a

# Lower the default tmux delay, this makes tmux more responsive.
set -s escape-time 1

# Enable mouse movements.
#setw -g mode-mouse on
#
## Enable pane selection via the mouse.
#set -g mouse-select-pane on
#
## Enable the mouse to resize panes.
#set -g mouse-resize-pane on
#
## Enable the mouse to change the current window.
#set -g mouse-select-window on

# Make tmux use 256 colors.
set -g default-terminal "screen-256color"

# Make tmux act like xterm to prevent Vim issues:
#set -g terminal-overrides 'xterm*:smcup@:rmcup@'

# Only resize the screen size if the smaller screen user has their window
# active. This way my screen won't be resized to an incredibly small window
# unnecessarily.
setw -g aggressive-resize on

# Store a lot of history.
set -g history-limit 100000

##### MAPPINGS
# PREFIX CTRL+a: send CTRL+a to the local application.
bind C-a send-prefix

# PREFIX r: Instantly reload tmux's configuration file.
bind r source-file ~/.tmux.conf \; display "tmux has been reloaded!"

bind C-q detach -P

# PREFIX \: Create a new vertial pane.
bind '\' split-window -h
# PREFIX -: Create a new horizontal pane.
bind - split-window -v

##### APPEARANCE
set -g status-bg white #base02
set -g status-fg black #yellow
#set -g status-attr default

# Default window title colors.
#setw -g window-status-fg brightblue #base0
#setw -g window-status-bg default

# Active window title colors.
#setw -g window-status-current-fg brightred #orange
#setw -g window-status-current-bg default

# Pane border.
#set -g pane-border-fg black #base02
#set -g pane-active-border-fg brightgreen #base01

# Message text.
#set -g message-bg black #base02
#set -g message-fg brightred #orange

# Pane number display.
set -g display-panes-active-colour blue #blue
set -g display-panes-colour brightred #orange

# Clock colors.
set -g clock-mode-colour green #green

# Coloca a barra de status em cima
set -g status-position top

# Make the left side of our status bar display the hostname.
set -g status-left " >> "

# Display the date and time on the right side of the status bar.
set -g status-right "#H  %d/%m/%Y %r %Z"

# Center our windows in the status bar display.
set -g status-justify left

# Disable window activity notifications in tmux windows.
setw -g monitor-activity off

# Refresh the status bar every 10 seconds.
set -g status-interval 10

bind-key S set-window-option synchronize-panes\; display-message "synchronize-panes is now #{?pane_synchronized,on,off}"

Publicado

em

por

Tags: