Super_L
adalah kunci-kunci X. Tmux berjalan di terminal. Terserah emulator terminal Anda untuk mengubah keysym menjadi urutan karakter. Jadi Anda harus mengkonfigurasi emulator terminal dan tmux.
Melihat dokumentasi tmux, awalan hanya dapat berupa nama kunci yang dikenal dengan pengubah opsional. Jadi, Anda dapat mengatur awalan tmux ke kombinasi tombol yang tidak Anda gunakan, katakan M-F12
, dan minta terminal Anda untuk mengirim urutan karakter M-F12
ketika Anda menekan Super_L
. Dengan sedikit bekerja lebih, Anda bisa menggunakan kunci yang keyboard Anda mungkin tidak memiliki (tmux menerima F13
melalui F20
sebagai nama kunci, tetapi mereka harus dinyatakan di terminfo).
Di sisi emulator terminal, Anda harus mengatur untuk Super_L
menghasilkan urutan kunci \e\e[24~
(untuk M-F12
) atau \e[34~
(untuk F20
) (di mana \e
karakter escape). Cara melakukan ini tergantung pada emulator terminal (dan beberapa tidak cukup dapat dikonfigurasi untuk melakukannya). Dengan xterm, ini dilakukan melalui sumber X:
! Make Super_L act as Meta+F12
XTerm.VT100.translations: #override \
<Key>Super_L: string("\033\033[24~")
Anda dapat menekan hambatan yang Super_L
biasanya merupakan pengubah, dan tombol pengubah tidak selalu berfungsi saat bukan pengubah diperlukan. Jika Anda tidak ingin Super_L
menjadi pengubah, Anda dapat menghapus pengubahnya, atau (tidak membingungkan) menggunakan tombol yang berbeda untuk tombol fisik. Ini dapat dilakukan melalui xmodmap (kuno dan mudah dipahami), melalui xkb (cara modern, yang tidak didokumentasikan dengan baik, kuat dan kompleks), atau mungkin melalui alat konfigurasi GUI lingkungan desktop Anda.
Gilles 'SANGAT berhenti menjadi jahat'
sumber
Super_L
adalah keysym X, jadi Anda mungkin memiliki server X di suatu tempat (jika Anda masuk dari Windows, saya kira Anda akan memanggil kunci tersebut sebagai tombol Windows kiri). Tmux berjalan di terminal, dan membaca inputnya sebagai byte, dengan tombol fungsi diterjemahkan ke dalam urutan escape. Login jarak jauh bersifat transparan, ssh hanya mentransmisikan byte yang membentuk urutan pelarian.Kamu tidak bisa Mengikat tombol akan memanggil
cmd_bind_key_parse
fungsi daricmd-bind-key.c
mana pada gilirannya akan (pada akhirnya) panggilankey_string_get_modifiers
darikey-string.c
:Ini
tmux.c
berisi#define
deklarasi kunci pengubah dan dari file itu kita memiliki:Namun di permukaan, tidak terlihat terlalu sulit untuk dimodifikasi; mungkin proyek akhir pekan (kata-kata terakhir yang terkenal;))?
sumber
Saya belum dapat menetapkan awalan ke kunci pengubah khusus, tetapi saya berhasil mendefinisikan binding tmux dalam kombinasi dengan kunci pengubah khusus di bawah Gnome dalam kombinasi dengan Metacity. Misalnya, untuk memetakan
Mod4
+ kdanMod4
+ juntuk pindah ke panel saat ini ke atas dan ke bawah masing-masing:Ini memungkinkan untuk tmux binding dalam kombinasi dengan misalnya kunci Windows. Sesuatu di sepanjang garis itu berfungsi untuk semua pengelola jendela yang memungkinkan untuk menentukan pintasan keyboard global (Compiz, KWin, dll.).
sumber
Sepertinya Anda menginginkan ini: https://lists.gnu.org/archive/html/screen-users/2009-12/msg00144.html
sumber