tmux: bagaimana cara mengikat kunci untuk meluncurkan perintah shell?


9

Saya gunakan tmuxuntuk mengembangkan, dengan dua panel: satu untuk mengedit kode, dan satu untuk mengkompilasinya. Saya perlu sering berpindah panel untuk meluncurkan perintah kompilasi (katakan " mvn install").
Bagaimana saya bisa mengikat kunci (katakan " Ctrl+ B C") untuk meluncurkan perintah khusus di panel lain (atau tanpa panel sama sekali)?

Jawaban:


7

C-b csudah memiliki standar yang mengikat yang mungkin bijaksana untuk tidak berubah. Memilih karakter lain, misalnya C-b CAnda dapat menyiapkan pengikatan di ~/.tmux.conffile Anda sebagai berikut:

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

The -t.-berarti "panel lainnya". Entersingkatan kunci dari nama itu, yaitu baris baru di akhir perintah.


Terima kasih atas solusinya. Namun, saya mengetahui bahwa itu juga mencetak perintah ke panel terminal karena.
elquimista

7

Jawaban yang tepat untuk pertanyaan ini adalah: gunakan bind-key, misalnya:

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

KEY=Cdi mana dalam kasus Anda.


Terima kasih. Tidak jelas bagi saya di mana perintah akan dijalankan? Di panel mana akan menjadi output?
cdupont

Ini harus menjadi jawaban yang diterima. jawaban meuh bekerja tetapi mensimulasikan interaksi manusia nyata, sehingga menghasilkan pencetakan perintah ke panel terminal.
elquimista
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.