Il send-prefix
comando può essere utilizzato per inviare la sequenza di tasti del prefisso al (il processo in esecuzione) nel riquadro attivo. Per impostazione predefinita, il prefisso è Cb e Cb è associato a send-prefix
(in modo che colpendolo due volte invii un singolo Cb al riquadro attivo). Questo è proprio ciò di cui abbiamo bisogno per accedere ai binding dell'istanza tmux interna .
Il primo Cb viene catturato dall'istanza tmux "esterna" come chiave prefisso. Il secondo viene catturato dall'istanza tmux "esterna" e attiva il suo legame Cb ( send-prefix
). Questo invia un Cb al riquadro attivo dell'istanza esterna. Il processo in esecuzione in questo riquadro è (in definitiva, tramite un'istanza ssh ) l' istanza tmux "interna" . Cattura Cb come chiave prefisso. Ora il tuo prossimo tasto verrà passato attraverso l' istanza tmux esterna e catturato da quello interno per innescare un'associazione.
Per attivare l' associazione c ( new-window
) in un'istanza di secondo livello di tmux , digitare Cb Cb c . Per un'istanza di terzo livello di tmux , digitare Cb Cb Cb Cb c .
Questo raddoppio per ogni livello può essere fastidioso se di solito hai a che fare con più livelli di TMux . Se puoi risparmiare qualche altra chiave, potresti creare un'associazione senza prefisso per rendere le cose (possibilmente) più facili da digitare:
bind-key -n C-\ send-prefix
bind-key -n C-^ send-prefix \; send-prefix
Crea una nuova finestra in tmux di secondo livello : C- \ c
Crea una nuova finestra in tmux di terzo livello : C- ^ c (o C- \ C- \ c )
Se hai un numero limitato di comandi tmux che desideri (facilmente) inviare alle istanze tmux di livello inferiore , potresti invece utilizzare send-keys
per creare alcuni collegamenti specifici (possibilmente solo nell'istanza tmux di livello superiore ):
bind-key C-c send-keys C-b c
bind-key C send-keys C-b C-b c
Crea una nuova finestra in tmux di secondo livello : Cb Cc
Crea una nuova finestra in tmux di terzo livello : Cb C