2010-11-10 18:40:45 +0000 2010-11-10 18:40:45 +0000
1389
1389

¿Cómo puedo desplazarme en tmux?

Acabo de empezar a usar el tmux, y me gusta mucho, pero necesito poder desplazarme dentro de los buffers/paneles/ventanas que tengo abiertos. No me importa si funciona con el ratón o no. Cuando busco en la página del tmux, sólo encuentro dos instancias de la palabra “scroll” que aparecen, y ambas tienen que ver con el modo de copia. ¿Hay alguna forma de desplazarse sin la sobrecarga de entrar en modo de copia?

Respuestas (12)

1685
1685
1685
2010-11-11 03:02:16 +0000

Ctrl-b luego [ luego puede usar sus teclas de navegación normales para desplazarse (por ejemplo, Flecha arriba o PgDn). Presione q para salir del modo de desplazamiento.

Como alternativa, puede presionar Ctrl-b RePág para pasar directamente al modo de copia y desplazarse una página hacia arriba (que es lo que parece que querrá la mayoría de las veces)

En el modo vi (vea abajo), también puede desplazarse por la página hacia arriba/abajo línea por línea usando Mayús-k y Mayús-j (si ya está en el modo de desplazamiento). Sin desplazamiento, el cursor se mueve en lugar de la página.

Los extractos de la página man :

tmux pueden ser controlados desde un cliente conectado usando una combinación de teclas de un prefijo, ‘C-b’ (Ctrl-b) por defecto, seguido de una tecla de comando.

The default command key bindings are:

[ Enter copy mode to copy text or view the history.

Function vi emacs
-------- -- -----
Half page down C-d M-Down
Half page up C-u M-Up
Next page C-f Page down
Previous page C-b Page up
Scroll down C-Down or C-e C-Down
Scroll up C-Up or C-y C-Up
Search again n n
Search again in reverse N N
Search backward ? C-r
Search forward / C-s

Más un montón más. Tenga en cuenta que debe presionar C-b dos veces si usa eso para subir la página, ya que C-b está limitado como tecla de comando. Consulte la página de manual para obtener información sobre cómo anteponer un comando de modo de copia con un recuento repetido.

Puede establecer el modo de encuadernación de la tecla usando Ctrl-b, y luego

:set-window-option mode-keys emacs

o vi.

335
335
335
2012-11-25 13:05:29 +0000

Bueno, deberías considerar la forma adecuada de configurar el desplazamiento: añadir tu tmux.conf

set -g mouse on #For tmux version 2.1 and up

o

set -g mode-mouse on #For tmux versions < 2.1

Funcionó para mí en las ventanas y los cristales. Ahora tmux es perfecto. Práctico tmux tiene más información sobre los archivos tmux.conf.

147
147
147
2011-08-22 20:49:40 +0000

Desde mi .tmux.conf:

# Sane scrolling
set -g terminal-overrides 'xterm*:smcup@:rmcup@'

Esto permite el desplazamiento nativo xtérmico.

63
63
63
2015-12-01 16:09:27 +0000

Para el nuevo tmux 2.1, para desplazarse con el ratón sanamente, esta es la respuesta correcta:

set -g mouse on
" sane scrolling:
bind -n WheelUpPane if-shell -F -t = "#{mouse_any_flag}" "send-keys -M" "if -Ft= '#{pane_in_mode}' 'send-keys -M' 'copy-mode -e; send-keys -M'"

no es suficiente con sólo recargar tu .tmux.conf necesitas reiniciar tu tmux, por ejemplo tmux kill-server && tmux

tomado de https://github.com/tmux/tmux/issues/145

16
16
16
2015-04-17 03:43:47 +0000

En mi caso, sólo opta por + Flecha arriba y opta por + Flecha abajo en OSX.

12
12
12
2013-06-21 15:33:39 +0000

Esta es la forma en que lo hice funcionar, y las razones por las que creo que es mejor que la forma por defecto.

Para probarlo, pon todas las secciones de código en ~/.tmux.conf.

Paso 1. Cambia la clave del prefijo para que no tengas que llegar a un bit. La ‘B’ es aparentemente una tecla cercana, pero está en medio de los dos dedos índices (en ‘F’ y ‘J’, respectivamente). Debido a que ese atajo es esencial en el tmux, C-j es mucho mejor ya que implica cero movimiento de la mano (aparte de pulsar la tecla).

set -g prefix C-j
unbind C-b
bind C-j send-prefix

Paso 2. La ‘S’ (para entrar en el modo copia) es: 1) cerrar (por la misma razón que arriba), 2) involucra la otra mano (comparar: la 1-2 en boxeo, o el ls comando para ver los archivos en un directorio), y 3) podría pensarse como mnemotecnia para “scroll” (aunque el modo copia no es sólo sobre el scroll).

bind s copy-mode

Paso 3. La última parte, el desplazamiento real. La “P” y la “N” son familiares para este propósito para los usuarios de Emacs. Son cercanas, intuitivas (‘P’ está sobre ‘N’ en el teclado), y mnemotécnicas (‘anterior’ y ‘siguiente’). Si acabas de hacer un poco de scroll en Emacs, y luego vas a tmux, tiene sentido tener esos atajos.

Sin embargo, he descubierto que la “I” y la “K” son incluso mejores - están incluso más cerca que la “P” y la “N”, y son intuitivas (por la misma razón); en cuanto a la mnemotécnica - como el desplazamiento es algo tan común, la mnemotécnica no importará realmente ya que los atajos pronto pasarán por alto tu cerebro y entrarán en la memoria muscular.

bind -t emacs-copy 'p' scroll-up
bind -t emacs-copy 'n' scroll-down
bind -t emacs-copy 'i' scroll-up
bind -t emacs-copy 'k' scroll-down
8
8
8
2016-12-07 16:34:30 +0000

Recomendaría probar el plugin tmux-better-mouse-mode para resolver la mayoría de los problemas relacionados con el ratón tmux.

Es compatible con Tmux 2.1+ y el nuevo enfoque set-option -g mouse on.

8
8
8
2016-03-31 00:42:33 +0000

He buscado mucho para esto y la mejor solución para mí funciona como se menciona en esta guía detallada http://tangledhelix.com/blog/2012/07/16/tmux-and-mouse-mode/

Añade estas fijaciones en ~/.tmux. conf:

set -g mode-mouse on

unbind +
bind + \
  new-window -d -n tmux-zoom 'clear && echo TMUX ZOOM && read' \;\
  swap-pane -s tmux-zoom.0 \;\
  select-window -t tmux-zoom

unbind -
bind - \
  last-window \;\
  swap-pane -s tmux-zoom.0 \;\
  kill-window -t tmux-zoom

Con el enfoque anterior implementado, puedes copiar desde los paneles de una ventana también haciendo un zooming en cada panel primero usando Prefijo +.

Un detalle importante que faltaba con el modo de ratón es presionar Mayúsculas antes de seleccionar un área para copiar. Esto lo copiará al buffer de terminal tradicional en lugar del buffer de copia tmux. https://wiki.archlinux.org/index.php/Tmux#Scrolling_issues )

7
7
7
2015-10-28 10:59:33 +0000

Lo único que me funciona es poner lo siguiente en ~/.tmux.conf

# Allow xterm titles in terminal window, terminal scrolling with scrollbar, and setting overrides of C-Up, C-Down, C-Left, C-Right
set -g terminal-overrides "xterm*:XT:smcup@:rmcup@:kUP5=\eOA:kDN5=\eOB:kLFT5=\eOD:kRIT5=\eOC"

(puede que necesites reiniciar para que esto surta efecto)

Actualizar:

Encontré que si cambias la configuración en Conexión de Masilla > Datos > Tipo de terminal a “masilla” (usado para arreglar algunos problemas de formato) de “xterm” entonces esta solución deja de funcionar.

Actualización 2:

Use esto si quiere “masilla” como su tipo de terminal: set -g terminal-overrides "putty*:XT:smcup@:rmcup@:kUP5=\eOA:kDN5=\eOB:kLFT5=\eOD:kRIT5=\eOC"

6
6
6
2017-01-04 20:22:53 +0000

Esto funcionó para mí:

vim ~/.tmux.conf
set -g mode-mouse on ###Insert this setting with vim, then source the file.
tmux source-file ~/.tmux.conf
4
4
4
2019-09-22 02:10:00 +0000

FWIW, en un macbook/OSX Mojave, después de ctrl+[ hacer:

  • up arrow para la línea de arriba
  • down arrow para la línea de abajo
  • fn + up arrow para la página de arriba
  • fn + down arrow para la página de abajo
  • q para salir del modo de vista
-2
-2
-2
2016-10-26 07:55:46 +0000
  • Ctrl + A - para empezar a desplazarse
  • Ctrl + C - para dejar de desplazarse