El send-prefix
comando se puede usar para enviar su pulsación de tecla de prefijo (el proceso que se ejecuta) al panel activo. De manera predeterminada, el prefijo es Cb y Cb está vinculado send-prefix
(por lo que presionarlo dos veces envía un solo Cb al panel activo). Esto es justo lo que necesitamos para acceder a los enlaces de la instancia interna de tmux .
El primer Cb es capturado por la instancia tmux "externa" como su clave de prefijo. El segundo es capturado por la instancia tmux "externa" y desencadena su enlace Cb ( send-prefix
). Esto envía un Cb al panel activo de la instancia externa. El proceso que se ejecuta en este panel es (en última instancia, a través de una instancia ssh ) la instancia tmux "interna" . Captura el Cb como su clave de prefijo. Ahora su siguiente pulsación de tecla pasará a través de la instancia externa de tmux y será capturada por la interna para activar un enlace.
Para activar el enlace c ( new-window
) en una instancia de segundo nivel de tmux , debe escribir Cb Cb c . Para una instancia de tmux de tercer nivel , debe escribir Cb Cb Cb Cb c .
Esta duplicación para cada nivel puede ser molesta si comúnmente se trata de múltiples capas de tmux . Si puede ahorrar alguna otra clave, puede hacer un enlace sin prefijo para que las cosas (posiblemente) sean más fáciles de escribir:
bind-key -n C-\ send-prefix
bind-key -n C-^ send-prefix \; send-prefix
Crear nueva ventana en tmux de segundo nivel : C- \ c
Crear nueva ventana en tmux de tercer nivel : C- ^ c (o C- \ C- \ c )
Si tiene un número limitado de comandos tmux que desea enviar (fácilmente) a las instancias tmux de nivel inferior , en su lugar, puede usar send-keys
para crear algunos enlaces específicos (posiblemente solo en su instancia tmux de nivel superior ):
bind-key C-c send-keys C-b c
bind-key C send-keys C-b C-b c
Crear nueva ventana en tmux de segundo nivel : Cb Cc
Crear nueva ventana en tmux de tercer nivel : Cb C