Isso aparece na lista de discussão a cada uma vez in a enquanto .
Não, não é possível ter um painel em mais de uma janela.
O design interno do tmux permite que as janelas sejam múltiplas sessões, mas um painel só pode pertencer a uma única janela.
É possível tornar um ou mais painéis tmux "fixos"? Ou seja esses painéis aparecerão em todas as janelas que estão atualmente disponíveis na minha sessão do tmux?
Como Chris diz, não há nenhuma funcionalidade embutida para permitir a marcação de um painel como algo pegajoso, e isso faz sentido, porque não é de modo algum imediatamente aparente como lidar com a reestruturação de todos os painéis em todos as outras janelas quando você alterna a "rigidez" de algum painel em particular na janela atual. Geralmente, seria uma má experiência do usuário estar mexendo com o layout de uma maneira que não é visível para o usuário.
Você pode achar útil uma ligação assim:
bind -n M-k move-pane -t ':+'
bind -n M-j move-pane -t ':-'
Isso seria amigável para um usuário do Vim acostumado a J e K para mover para a esquerda e para a direita. Com este bind, o tmux vai entrar e engolir Alt + K e Alt + J para mover o painel ativo para as janelas direita e esquerda, respectivamente.
Ele puxará a janela atual em que você está e a colocará na janela do tmux adjacente. Você pode até mesmo especificar qual índice para inserir o painel no layout da janela de destino. Veja a manpage para as outras opções que podem ser dadas para move-pane
.
Dessa forma, é claro que ainda há uma mudança de layout (uma na janela de origem que é implícita e restrita a um painel e uma na janela de destino, também restrita a um painel e que é observada diretamente), mas é muito mais "controlado", e desde que você mantenha o foco no painel destinado a ser "pegajoso", atinge seu objetivo, mais ou menos.
Eu ainda acho isso insatisfatório por causa da necessidade de focar o painel destinado a ser "pegajoso", e isso dificulta a emissão rápida desse comando se você quiser ter um painel fixo que esteja sempre visível, mas você nunca realmente realmente tê-lo focado.
Existe a possibilidade de criar scripts tmux um pouco mais elaborados, que usam nomes especiais para o painel que você pretende manter e que organiza manualmente as coisas para você. Isso soa como uma dor na bunda, no entanto.
Uma última opção para entreter é usar o tmux aninhado: Coloque seu painel fixo no tmux pai e o outro painel conterá um tmux que hospeda o resto dos seus terminais. Desta forma, você pode alternar livremente em seu filho tmux. O problema com isso é que você precisará criar algo viável, pois, por padrão, você precisará pressionar a tecla de prefixo duas vezes para executar as mesmas tarefas. Muito chato também. Liguei-o de maneira inteligente a "encapsulamento" através de qualquer tmuxes aninhados, mas a lógica desses esquemas de passagem de mensagens ineficientes rapidamente se torna difícil de gerenciar. E uma limitação com isso é que o "painel pegajoso" aqui tem que abranger toda a altura ou largura, não pode ser um canto.
Em conclusão, eu diria que este é um recurso que o tmux deve implementar para nós, porque é quase impossível fazer o certo com o script, no entanto, eu não sei como isso poderia ser feito de uma maneira não confusa. minha primeira frase).
Tags tmux