tmux: come associare una chiave per lanciare il comando shell?


9

Uso tmuxper sviluppare, con due riquadri: uno per modificare il codice e uno per compilarlo. Devo cambiare riquadro molto spesso per avviare il comando di compilazione (dire " mvn install").
Come posso associare una chiave (dire " Ctrl+ B C") per lanciare quel comando specifico nell'altro riquadro (o senza alcun riquadro)?

Risposte:


7

C-b cha già un'associazione standard che potrebbe essere saggio lasciare invariato. Scegliendo un altro personaggio, ad esempio C-b Cpuoi impostare un'associazione nel tuo ~/.tmux.conffile come segue:

bind C send-keys -t.- 'mvn install' Enter

I -t.-significa "l'altro riquadro". Enterindica la chiave di quel nome, ovvero la nuova riga alla fine del comando.


Grazie per la soluzione Tuttavia, ho imparato che stampa anche il comando sul pannello terminale dovuto.
elquimista,

7

La risposta giusta a questa domanda è: usare bind-key, ad esempio:

tmux bind-key "$KEY" run-shell "/path/to/script.sh"

dove KEY=Cnel tuo caso.


Grazie. Non mi è chiaro dove verrà eseguito il comando? In quale riquadro sarà l'output?
cdupont,

Questa dovrebbe essere la risposta accettata. La risposta di meuh funziona ma simula la reale interazione umana, quindi risulta nella stampa del comando nel pannello terminale.
elquimista,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.