El desplazamiento del mouse no funciona en tmux de la forma en que funciona cuando ejecuto shell sin tmux (en la Terminal de Gnome). Parece que tmux envía eventos de desplazamiento del mouse como si presionase las teclas Arriba / Abajo. Pero quiero que se desplace por el historial de salida del shell . ¿Hay alguna manera de hacer que tmux funcione así?
Nota: Sé cómo desplazarme con el teclado (gracias a otra pregunta aquí).
Intenté desplazarme con el mouse en dos versiones de tmux:
- 0.8-5hardy1 (en Ubuntu 8.04 (Hardy Heron))
- 1.3-1 (en Ubuntu 10.10 (Maverick Meerkat))
Respuestas:
Para desplazarse dentro del historial de la salida Debería usar
^b
+[
Luego puede usar M + V para subir de página y ^ V para bajar de página. No sé si puedes usar lo real PgUpy PgDownsin embargo. Mi terminal no envía estas claves al tmux. En cambio, se desplaza solo y no la historia de tmux.Para salir del modo de copia, presione ESC
Para usar su mouse en este modo (llamado modo de copia) presione
^b
+:
e ingrese lo siguiente:Nota: En tmux <2.1, la opción fue nombrada
mode-mouse
, y nomouse
Ahora, cuando cambie al modo de copia, puede usar el mouse para desplazarse por él. Puede poner este comando en su ~ / .tmux.conf si lo desea para que se cargue cada vez que ejecute tmux.
Actualización: a partir de tmux 1.5, esta opción hace que el uso de la rueda de desplazamiento cambie automáticamente al modo de copia y retroceda el búfer de desplazamiento tmux. Ya no es necesario golpear primero
Ctrl-B
+[
. Desplazarse hacia abajo hasta el indicador también finaliza el modo de copia automáticamente.fuente
set -g mouse on
funcionó para mí en macOS tmux 2.1Hay algunos cambios para Tmux 2.1
El modo del mouse ha sido reescrito. Ahora ya no hay opciones para:
En cambio, solo hay una opción: 'mouse' que activa completamente el soporte para mouse.
Eso sería
fuente
bind
ya no parece ser necesario en tmux 2.3set -g mouse on
. El comentario anterior es correcto. El enlace ya no es necesario.La versión actual de tmux (1.5) le permite simplemente activar la opción de modo-mouse y le permite desplazarse con la rueda del mouse.
En mi .tmux.conf:
fuente
C-A PgUp
para hacer eso. Puede enlazar la clave de página directamente contmux bind-key -n PPage copy-mode -u
. El thign similar debería funcionar para shift + pageup si lo desvincula de su terminal local.Prueba esto en tu .tmux.conf
Tomado de http://brainscraps.wikia.com/wiki/Extreme_Multitasking_with_tmux_and_PuTTY
fuente
escape-time
configurarAlguien (de una fuente que perdí) sugirió agregar lo siguiente a
~.tmux.conf
:No tengo idea de cómo funciona o qué hace, pero esto ahora me permite desplazarme con la rueda del mouse dentro de una sesión de tmux sin tener que ingresar al modo de copia de tmux; ¡Solo desplazo la rueda y BAM! funciona. Tenga en cuenta que estoy usando terminal.app, pero recuerdo que el OP dio la respuesta específicamente para usar con
gnome-terminal
.fuente
less
. Si cargoless
dentrotmux
, el desplazamiento del mouse no desplaza el archivo abiertoless
. Se desplaza por toda la terminal. Curiosamente, sevim
comporta como se esperaba dentrotmux
con su configuración.setw -g mode-mouse on
opción, que copia el modo de desplazamiento hacia atrás utilizando la rueda del mouse.man xterm
explica la pantalla alternativa.tmux 2.1 presenta nuevos enlaces de mouse.
Hoy escribí estos enlaces hoy. Se une sin problemas la rueda del mouse a las flechas cuando no está en Vim, porque Vim es capaz de interpretar los códigos de la rueda del mouse sin procesar (para propósitos tales como elegir qué ventana de Vim se desplazará por usted dependiendo de cuál sea el mouse).
Esto significa que finalmente podemos usar el mouse solo para ver varias páginas de manual y cualquier otra cosa que acepte teclas de flecha. Puede extender y encadenar la
if
lógica según sea necesario para implementar más lógica para sus aplicaciones.Con esta nueva capacidad de unión de la rueda, es posible escribir la rueda del mouse para realizar cualquier comportamiento sensible al contexto que desee.
fuente
Gnome-terminal realiza algunos trucos geniales al traducir los eventos de desplazamiento del mouse a las teclas de flecha arriba y abajo en condiciones de desplazamiento "habitual" restringido. Por ejemplo, cuando ve un poco de texto usando
less
(esto ocurre especialmente cuando estás leyendo un hombre), puede desplazarse usando el contenidoj
,k
y las teclas de flecha. Pero también , congnome-terminal
, puedes hacerlo con el desplazamiento del mouse, gracias al truco mencionado.Así que supongo
tmux
que algo de "captura" de la terminal es igualless
, y el mismo mecanismo en lasgnome-terminal
patadas: el desplazamiento del mouse se traduce en presionar las teclas de flecha arriba / abajo.Puede desactivar esta función en la configuración del perfil y obtener el desplazamiento regular en cualquier circunstancia. Sólo desmarcar la última casilla de verificación en la pestaña "desplazamiento": .
fuente
gnome-terminal
deja de enviar el triple^[[A
y se^[[B
desplaza con el mouse. Es más agradabletmux
(no es feo^[[A^[[A^[[A
en algunos programas, no es feo el desplazamiento del historial de comandos), pero ahoraless
deja de desplazarse en el desplazamiento del mouse.i
personajes)https://github.com/NHDaly/tmux-better-mouse-mode
Implementación de control de mouse configurable y con muchas funciones para tmuxes más nuevos. muy recomendable.
Probablemente quieras usar
con eso también.
fuente
Puede combinar las ideas vinculantes de las otras respuestas para obtener un comportamiento de desplazamiento bastante satisfactorio: funciona en los cambios vim al modo de copia automáticamente en la terminal y sale cuando llega al final, aún le permite usar la rueda del mouse en man, less y journalctl.
Mi código:
puede agregar otros comandos que requieren teclas de flecha para desplazarse en la parte grep -e 'man'
Agregué las teclas de envío varias veces, por lo que una marca en la rueda del mouse se desplazará 4 líneas a la vez
fuente
Si ya está en una sesión tmux, puede ejecutar el comando
Recordatorio: para ejecutar comandos, use su prefijo entonces
:
.fuente