El problema es doble. Primero, tmuxpor defecto convierte las teclas de flecha de control de un tipo de secuencia de escape a otro. Así teclas especiales como controlleftson enviados a vimsin el modificador, por ejemplo, left. Si usa cat -vpara ver las diferentes secuencias de escape, es posible que vea algo como esto
^[OD
versus esto (fuera de tmux):
^[[1;5D
La línea
set-window-option -g xterm-keys on
corrige ese aspecto. La otra parte es que tmuxpor defecto usa la descripción del terminal para screen. Esa descripción de terminal no describe las teclas de flecha de control. Estas entradas de la base de datos del terminal serían las más apropiadas para VTE (gnome-terminal):
que sería seleccionado automáticamente cuando se ejecuta en screensi el correspondiente TERMfuera eran vte, vte-256color, etc. tmuxno hace esto-selección automática; tienes que modificar su archivo de configuración.
Por cierto, no hay una entrada "screen.xterm" porque interferiría con algunos usos de screen. No hay conflicto con TERM=xterm-new.
Si tiene una base de datos de terminal predeterminada (mínima) como ncurses-baseen Debian, es posible que no la tenga. Más común sería xterm-256color, que está lo suficientemente cerca como para usar con vim y tmux.
Por ejemplo, si agrego esto a mi .tmux.confarchivo, se comporta como espera en vim:
Hmmm ... Esto funciona :) Pero solo parcialmente. Solo Control+ Leftestá funcionando; Control+ Rightno lo es. Probaré y actualizaré más tarde.
Shivams
1
Puede tener alguna otra unión que interfiera con el control + derecho (detalles dados, puedo ofrecer consejos).
Thomas Dickey
Gracias por la oferta :) Investigué un poco y descubrí que algunas otras combinaciones de teclas están causando interferencias. Por ejemplo, en mi Mac esto funciona bien, mientras que en Linux (usando Guake) no lo es. Sin embargo, estoy fuera de la estación y no puedo acceder a mi Linux. Actualizaré cuando resuelva el problema.
Shivams
@Thomam Dickey: Mientras tanto, acepto su respuesta, ya que de hecho resuelve el problema.
Shivams
@ThomasDickey Me gustaría decir: "Go raibh míle maith agat", que en irlandés se traduce literalmente como "Que tengas mil cosas buenas". Muchas gracias por esta respuesta. Eres una estrella.
Rob
2
Desde aquí puede desvincular la combinación de teclas en byobu:
Cree un archivo ~/.byobu/.tmux.confcon (o agregue si el archivo existe):
set-window-option -g xterm-keys on
Luego agregue lo siguiente a ~/.byobu/keybindings.tmux:
Control
+Left
está funcionando;Control
+Right
no lo es. Probaré y actualizaré más tarde.Desde aquí puede desvincular la combinación de teclas en byobu:
Cree un archivo
~/.byobu/.tmux.conf
con (o agregue si el archivo existe):Luego agregue lo siguiente a
~/.byobu/keybindings.tmux
:fuente