Mesmo tendo começado a usar o tmux para painéis, ainda uso a tela para multiplexar as janelas. O tmux supostamente tem essa funcionalidade, mas trocar painéis de uma janela para outra não é intuitivo para mim, nem dois visualizadores tmux anexados podem estar visualizando janelas diferentes dentro do mesmo daemon (comportamento screen -x), portanto a solução screen-in-tmux. Estas são duas ligações tmux.conf que demoraram mais tempo para descobrir e eu uso todos os dias.
O primeiro, ligar M (ctrl-b shift-M), alterna o tmux entre o seletor de painel de mouse e o realce / cópia do mouse. Você ainda pode copiar / colar no modo de seleção de painel, mas você deve manter o turno (e se você adquirir o hábito disso, copiar / colar em qualquer outro aplicativo tornará você um pouco infeliz, deixe-me dizer). A macro também torna visualmente óbvio qual modo está atualmente selecionado.
bind M set mouse-select-pane \; if '[ "'tmux show -v mouse-select-pane'"= "on" ]' "set status-bg cyan \; set pane-active-border-bg cyan" "set status-bg green \; set pane-active-border-bg default"
O segundo, ligar o C-L (ctrl-b ctrl-l), vai pegar qualquer layout de 4 painéis e transformá-lo no meu layout preferido. Muitas vezes, eu vou encontrar eu ctrl-d em um painel que eu pensei que estava dentro da tela para fechá-lo, mas em vez disso não houve sessão de tela e fechou o painel. Já que meu layout é v-split, h-split, v-split e alguns redimensionamentos, se eu acidentalmente fechava qualquer um exceto a última janela, torna-se uma dor (sem trocadilhos) fechar quaisquer painéis intermediários entre o que eu preciso recriar e o último, recriar e redimensionar os painéis e, finalmente, reconectar as sessões de tela que eu precisei separar ao matar os painéis. Com esta macro, eu posso criar um novo painel, ctrl-b {(o bind padrão para o swap-pane -U) até que ele esteja de volta na ordem correta, então pressione a macro e tudo estará de volta ao normal. Meu layout preferido provavelmente não é o mesmo que o seu, portanto, quando você tiver um layout de que goste, use o comando list-windows
para obter uma string de layout como a abaixo.
bind C-L select-layout a18e,155x94,0,0[155x18,0,0,6,155x75,0,19{81x75,0,19,31,73x75,82,19[73x22,82,19,32,73x52,82,42,33]}]
Se isso é muito ingênuo para o seu gosto, sempre há o tmuxinator para o gerenciamento de painéis.