Como usar as combinações de teclas Byobu em uma sessão remota aninhada?

22

Estou usando o Byobu (com o Tmux, dentro do gnome-terminal) e tenho um problema com as combinações de teclas (que provavelmente não consigo entender).

Inicio o byobu, abro algumas janelas e, a partir de uma dessas janelas, ssh em outra máquina e inicio o byobu lá. Não importa se eu pressiono Ctrl- cou Ctrl- a- c, não tenho certeza de como criar e alternar entre janelas nesta sessão remota.

Nota: se eu entrar Shift- F12posso alternar entre janelas usando as teclas de função na sessão remota, mas isso é menos do que o ideal, pois também preciso alternar entre janelas na sessão principal.

Alguma ideia?

Agradeço antecipadamente por sua ajuda.

tseliot
fonte
11
Ter duas instâncias do tmux é realmente confuso: considere evitá-lo, se puder. Dito isto, eu respondi sua pergunta.
Jennifer Wilson

Respostas:

20

Estou assumindo que você configurou o byobu para usar Ctrl- Acomo a sequência de escape do tmux.

Os comandos que você digita no seu terminal são tratados pela sua instância local do tmux, depois tratados pela sessão aninhada do tmux. Isso significa que você precisa escapar duas vezes para acessar a instância aninhada:

  • Ctrl- a c# abre uma janela na sua sessão local
  • Ctrl- a Ctrl- a c# abre uma janela na sua sessão remota

Se a segunda linha não funcionar, tente (como apontado por @artm )

  • Ctrl- a a c# segundo a semCtrl
Jennifer Wilson
fonte
2
Uma idéia adicional: se você fizer isso com frequência, altere a tecla de comando da máquina interna para outra coisa, como talvez ^ B.
poolieby
7
não funciona para mim. Duplo ctrl-a mudança para outra guia da sessão Byobu locais
Gelin Luo
11
@ green Estou com o mesmo problema, pressionando duas vezes Ctrl-a altera a guia na sessão externa.
logoff
6
que deveria ser Ctrl-a a c(segundo 'a' sem controle)
artm
16

Achei que usar Shift-F12para ativar / desativar as teclas de atalho externas do byobu é um pouco mais fácil de lembrar e usar. A única nova chave a ser lembrada é Shift-F12e, em seguida, o byobu interno pode ser controlado com as ligações de teclas F normais.

Encontrei a solução aqui .

mp3foley
fonte
11
Isso também é útil para poder enviar as teclas F para um aplicativo em execução no byobu. Como também observado em: askubuntu.com/questions/146585/…
mp3foley 5/05
2

Ctrl-a Ctrl-atambém não funcionou para mim. Descobri que funcionava depois de comentar a seguinte linha em .byobu/keybindings.tmux:

unbind-key -n C-a

Outra solução alternativa seria usar o send-keycomando interno do Tmux :

  • selecione o painel ou janela em que a sessão aninhada é executada
  • pressione Ctrl+ a :enter send-key -2e, em seguida, o comando ou tecla que você deseja enviar

Exemplos:

  • Ctrl+ a : send-key -2 c= criar nova janela
  • Ctrl+ a : send-key -2 p= alternar para a janela anterior
  • Ctrl+ a : send-key -2 n= alternar para a próxima janela

Não é muito intuitivo, mas funciona mesmo com o Putty.

LiveWireBT
fonte
Obrigado por isso! Consegui definir meu prefixo local de byobu como Cb e meu prefixo remoto de byobu como Ca alterando ~ / .byobu / keybindings.tmux. Tentar definir isso em ~ / .byobu / .tmux.conf não funcionou por algum motivo.
Marc Laugharn