Como faço com que Ctrl + Esquerda / Ctrl + Direita pule uma palavra novamente no byobu?

19

Nas minhas máquinas Ubuntu 11.10 executando o byobu 4.37, posso usar a combinação de teclas Ctrl+ / Ctrl+ para pular uma palavra de cada vez no terminal. No entanto, nas minhas máquinas Ubuntu 12.04 com byobu 5.17 isso não funciona mais.

Eu li que o byobu remapeou essas combinações de teclas para redimensionar as divisões e agora Alt+ e Alt+ têm o efeito desejado. No entanto, não consigo encontrar onde Alt+ e Alt+ estão mapeados, para remapear Ctrl+ e Ctrl+ . Se eu desmapear as combinações de teclas para Ctrl+ e Ctrl+ , o cursor moverá apenas 1 caractere por vez, não 1 palavra por vez.

chmac
fonte

Respostas:

11

Uma solução foi mudar o back-end para a tela. No entanto, tive problemas recorrentes com a tecla Ctrl-direita quando fiz isso. Para fazer isso, mude ~/.byobu/backendpara BYOBU_BACKEND=screen.

Posteriormente, encontrei uma solução muito melhor usando o tmux desse bug . Crie ~/.byobu/.tmux.confcom este valor:

set-window-option -g xterm-keys on

Depois ~/.byobu/keybindings.tmuxcom:

unbind-key -n C-Left
unbind-key -n C-Right

Agora, pressione Ctrl-Esquerda e Ctrl-Direita pule uma palavra por vez no tmux.

chmac
fonte
0

No meu ~/.zshrc

bindkey '^[[1;5D' backward-word
bindkey '^[[1;5C' forward-word

... E agora ctrl+left / rightpule palavras no byobu / tmux.

yPhil
fonte
Esse é um truque útil. Eu acho que só funciona para shells zsh. Pessoalmente, estou usando o zsh localmente, mas bash em qualquer outro lugar.
chmac
0

O motivo da mudança é porque agora o Byobu está usando tmuxcomo back-end, em vez de screen.

CTRL- Left& CTRL- Rightsão usados ​​em tmuxpainéis de navegação, por isso temos que dizer tmuxpara não fazer isso! Basta editar o seu ~/.byobu/keybindings.tmuxe adicionar as seguintes linhas ao final:

unbind-key -n C-Left
unbind-key -n C-Right

Basta sair / voltar e você verá a alteração.

* Observe que isso funcionará apenas para xterme não para o real ttys. Você notará que, mesmo sem usar byobu, ctrl- lefte ctrl- rightnão se comporta como o esperado de a tty. O Ubuntu parece ignorar /etc/inputrcao usar um ttypor algum motivo.

reverendj1
fonte
2
Eu tentei isso, mas então a tecla Ctrl-esquerda / direita move apenas um caractere de cada vez, não uma palavra inteira.
chmac
Posso confirmar a solução do @ chmac.
Jrg
2
boa resposta, mas não funcionou para mim sem as .tmux.confalterações
Brenden