Questão Mover o painel para uma nova janela no tmux


Eu sei que é possível no tmux Junte-se uma janela como um painel, mas é possível mover um painel para sua própria janela (guia)? Eu tentei pesquisar na página de manual, mas não consegui encontrá-la. Eu acho que é possível fazê-lo através de um script de shell, mas existe alguma outra maneira mais elegante?


128


origem




Respostas:


Comandos do tmux relevantes

  • join-pane -s
  • join-pane -t
  • break-pane

Ligações

Você pode adicionar as seguintes ligações ao seu ~/.tmux.conf:

## Join windows: <prefix> s, <prefix> j
bind-key j command-prompt -p "join pane from:"  "join-pane -s '%%'"
bind-key s command-prompt -p "send pane to:"  "join-pane -t '%%'"

O acima pode mover os painéis entre as janelas existentes.

Para quebrar um painel em uma nova janela, use break-pane  (que também pode ser ligado).

Uso Alterativo

Todos os três comandos podem ser usados ​​no prompt do tmux como: <prefix>+: então break-pane
Ou no prompt do shell (dentro do tmux) com: tmux break-pane.


141



Vale a pena observar que você direciona um painel usando o seguinte formato: "mysession: mywindow.mypane" (se estiver em uma sessão diferente) e "mywindow.mypane" (se estiver na mesma sessão). Você também pode usar "mysession: progname" se o programa em execução nesse painel for exclusivo. - Ben Davis
bind-key ! da outra resposta é tudo que eu preciso. - guaka


Na lista de comandos, você pode ver que ele é chamado de break-pane e o comando é apenas

chave de ligação!

onde bind-key é padronizado para Ctrl+B


108



Existe uma distância para anexar de volta o painel "quebrado"? - nazikus
@ nazikus você pode usar join-pane. Se você não vê nenhuma ligação para ele bind-key ? (Eu não), você pode invocar o prompt de comando com bind-key : e executar join-pane -t <destination pane index>. - Austin Adams
Não esqueça o cólon! Está join-pane -t <optional session name>:<destination pane index> por exemplo. join-pane -t :0 - Walf


Na versão mais recente do tmux, instalada a partir do homebrew no OSx - 1.9a - o padrão de ligação de chaves implementa o join-pane com um menu

bind-key          S choose-window "join-pane -v -s "%%""
bind-key          V choose-window "join-pane -h -s "%%""

6