Accesos directos de teclas de función en PuTTY / MinTTY y Tmux / Byobu


18

Como un acechador de mucho tiempo en Stack Exchange, he encontrado respuestas a la mayoría de mis problemas sin tener que hacer una cuenta. Pero hoy estoy completamente perplejo con este problema, así que estoy buscando ayuda.

Recientemente descubrí Byobu, una interfaz para Tmux que usa las teclas Fn para tareas comunes. Es una verdadera bendición para realizar múltiples tareas a través de SSH a un servidor Linux remoto desde la PC con Windows que tengo que usar en el trabajo.

Actualmente, estoy usando gnome-terminal a través de un túnel SSH porque tanto PuTTY como MinTTY (el terminal predeterminado con Cygwin) parecen enviar códigos de teclas incorrectos para las teclas de función.

Me preguntaba si había una manera de reasignar ciertos códigos de escape para que al menos uno de mis terminales basados ​​en Windows pueda funcionar correctamente con Tmux. (Creo que podría aprender las combinaciones de teclas Ctrl + b / Ctrl + a, pero realizar una combinación de teclas seguida de otra tecla realmente no me parece ergonómico).

En PuTTY, configurar Terminal> Teclado> "Teclas de función y teclado" en "XtermR6" parece empujar las secuencias de escape correctas para las teclas Fn normalmente, pero los modificadores Shift y Ctrl están rotos. Puedo usar vim para averiguar qué códigos están enviando cada terminal. Mientras tanto, creo que podría haber buscado la combinación que tmux está buscando en su código fuente , pero no estoy seguro:

Key              Tmux Expects    Gnome-Terminal   PuTTY    MinTTY
Normal F3:                       ^[0R             ^[0R     ^[0R
Ctrl+F3          "\033[13^"      ^[01;5R          ^[0R     ^[[1;5R
Shift+F3         "\033[13$"      ^[01;2R          ^[[25~   ^[[1;2R
Ctrl+Shift+F3    "\033[13@"      ^[01;6R          ^[[25~   ^[[1;6R

Hasta ahora, MinTTY parece el mejor candidato, pero me da un problema completamente diferente en el que byobu ignora el 95% de las pulsaciones de teclas Fn, pasándolas directamente a la aplicación del cliente. Puedo ejecutar cat -v y enviar spam a la tecla F2 (nueva ventana), e imprimirá "^ [0Q" cuatro o cinco veces antes de que aparezca una nueva ventana.

Si alguien tiene un consejo, sería bienvenido. La mayoría de las cosas que encontré en Internet dicen que cambian el tipo de terminal, pero he probado literalmente todas las combinaciones que ofrecen los dos programas.

¡Gracias!


3
Las secuencias que enumera para tmux son solo las secuencias de clave modificada de estilo rxvt que reconoce. tmux también reconoce la secuencia (no modificada) especificada por la entrada terminfo de TERM (p. ej., kf3desde cualquier TERM que esté utilizando al adjuntar a tmux ), así como las secuencias de clave modificada de estilo xtermxterm-keys.c . Entonces, las secuencias que informas desde Gnome-Terminal y MinTTY (aunque el escape + ceros en tus secuencias deberían ser escape + letra-ohs (también conocido como SS3) deberían ser reconocidos por tmux , pero solo los pasará si tienes el xterm-keysopción habilitada
Chris Johnsen

Respuestas:


1

He tenido un problema similar con PuTTY y pantalla (no pude usar el Ctrlmodificador). La solución que encontré fue KiTTY , la bifurcación de PuTTY, que se mantiene mejor (última actualización del 02/06/2015 22:02). Mi problema con la Ctrlllave se ha ido.

De manera predeterminada, Kitty usa las teclas Fn para sus propios accesos directos, pero puede configurarlo de otra manera , por lo que las pulsaciones de teclas Fn se enviarán a su aplicación.


0

Yo uso BYOBU yo mismo de la misma manera. Solo uso cygwin en estos días ya que F2,3,4 y F6 solo funcionan para mí y esos son los únicos que realmente me preocupan. Sin embargo, cuando estaba usando masilla, tuve el mayor éxito con la configuración 'Teclas de función y teclado' configurada para emular VT100 +

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.