Mi ~/.tmux.conf
:
set -g prefix C-a
unbind C-b
bind C-a send-prefix
bind-key o split-window -v
bind-key e split-window -h
bind-key w kill-pane
(para que las teclas de comando sean las mismas que las de GNOME Terminator)
La situación: después de dividir horizontalmente la ventana en 2 paneles, cambiar a un panel con la flecha Ctrl+ a Up, debo esperar un momento (2-3 segundos) para ver los comandos del historial del shell en este panel. Porque si presiono Upnuevamente, volverá al otro panel en lugar de mostrarme un comando de historial de shell. ¿Cómo puedo rechazar esto?
Respuesta1
Arriba, Abajo, Izquierda y Derecha ( select-pane
vinculaciones; y Control- y Meta- de las mismas teclas para resize-pane
) son vinculaciones "repetibles" de forma predeterminada (realizadas a través de bind-key -r
). Después de escribir la clave del prefijo y cualquier clave repetible, puede escribir cualquier otra clave repetible (sin tener que escribir el prefijo nuevamente) dentro del número de milisegundos especificado mediante la repeat-time
opción de sesión (el valor predeterminado es 500 ms).
Puede examinar el valor actual de repeat-time
con estos comandos de shell:
tmux show-options -g | grep \^repeat-time # global
tmux show-options | grep \^repeat-time # this session
Si desea deshabilitar la repetición para la sesión actual, escriba su prefijo, dos puntos e ingrese este comando:
set-option repeat-time 0
O bien, es posible que pueda encontrar un valor cómodo distinto de cero. Si realmente tiene un valor de alrededor de 2000 (es decir, 2 segundos), supongo que se está configurando en /etc/tmux.conf
.
Si desea deshabilitar la repetición (o cambiar el tiempo de espera) para todas sus sesiones, establezca el valor global con este comando:
set-option -g repeat-time 0
Si ha establecido un valor por sesión, deberá desactivarlo antes de que el valor global entre en vigor en esa sesión ( set-option -u repeat-time
). Es posible que desee establecer el valor global a través de su .tmux.conf
si prefiere dejarlo desactivado "permanentemente".
Si solo tienes problemas con Up, puedes volver a vincularlo sin -r
:
bind-key Up select-pane -U
Respuesta2
También puedes desactivar la repetición para combinaciones de teclas específicas, si así lo deseas. Por ejemplo, los enlaces predeterminados para cambiar entre paneles se reducen a:
bind-key -r Up select-pane -U
bind-key -r Down select-pane -D
bind-key -r Left select-pane -L
bind-key -r Right select-pane -R
Podrías recrearlos sin la -r
bandera, como
bind-key Up select-pane -U
bind-key Down select-pane -D
bind-key Left select-pane -L
bind-key Right select-pane -R
Personalmente, prefiero que el cambio de panel no sea repetible. Repetir es bueno si tiene una ventana dividida en muchos paneles pequeños, pero puede provocar colisiones clave (como las que describió) con las aplicaciones que se ejecutan dentro de esos paneles (como historial de shell, vim, etc.), y yo De todos modos, normalmente no tienen más de 2 paneles por ventana. Pero a cada cual lo suyo.