Menggunakan Ctrl + B dalam waktu kurang dalam tmux

17

Saya menggunakan Ctrl+Bawalan perintah dalam tmux, namun ini bentrokan dengan Ctrl+Bdi less, yang digunakan untuk bergulir ke atas file.

Bagaimana saya bisa membuatnya bekerja? Apakah saya harus menetapkan awalan perintah yang berbeda tmux? Saya benar-benar tidak mau harus belajar ikatan kunci baru jika saya bisa menghindarinya.

dogbane
sumber

Jawaban:

18

Jelas Anda tidak dapat memiliki dua tombol yang melakukan hal yang sama ketika kedua program mendengarkan. Tmux akan mendapatkannya terlebih dahulu. Anda tidak menentukan kumpulan ikatan kunci mana yang tidak ingin Anda pelajari kembali, tetapi Anda harus melakukan sesuatu yang berbeda karena kunci yang sama digunakan untuk kedua aplikasi.

Jika Anda hanya menggunakannya sesekali saja, lessAnda bisa meneruskan hal yang sebenarnya dengan menekan Ctrl+ BB(yaitu Ctrl-B dua kali) tmuxuntuk meneruskan satu Ctrl-B ke aplikasi di panel saat ini.

Jika Anda ingin mengubah tmuxpenjilidan menjadi sesuatu yang lain (katakan seperti Ctrl+ Asuka screen), Anda dapat menambahkan ini ke file `~ / .tmux.conf Anda:

unbind C-b
set -g prefix C-a

Jika Anda ingin menggunakan sesuatu yang lain less, Gkuncinya biasanya sudah menuju ke bagian atas file, jadi tidak perlu ada perubahan. Jika perubahan itu tidak cocok untuk Anda, Anda dapat memutar ulang kunci menggunakan lesskey.

Caleb
sumber
Jika saya mengubah tmux yang mengikat Ctrl+A, itu akan berbenturan dengan awal-perintah-. Saya juga memiliki 'Ctrl + B + B' terikat ke jendela yang dipilih sebelumnya.
dogbane
1
@ Caleb: Di my tmux(Ubuntu 11.04 dengan konfigurasi default), "Ctrl + B B" tidak melakukan apa-apa (juga tidak didokumentasikan di halaman manual); kita harus menggunakan "Ctrl + B Ctrl + B" untuk mengirim Ctrl + B ke aplikasi. (Sebaliknya, screendefault untuk menggunakan "Ctrl + A A" untuk mengirim "Ctrl + A" ke aplikasi.) Lagi pula, jawaban yang sangat baik.
Riccardo Murri
1
@RiccardoMurri: Itu masalah nomenklatur. Saya tidak meninggalkan ruang di antara Btombol-tombol yang menunjukkan bahwa kontrol sudah berhenti. Biasanya dengan kunci gaya seperti itu Anda akan memberi spasi atau koma di antara tombol jika tombol kontrol akan dilepaskan, tetapi itu bukan standar yang didefinisikan dengan baik. Beberapa orang bahkan tidak menggunakan +sintaks yang sama ...
Caleb
@dogbane: Jika Anda mengikat kembali CTRL-B ganda ke sesuatu selain default, itu salah Anda dan Anda harus memetakannya, memetakan versi pass CTRL-B ke sesuatu yang lain, atau menggunakan kunci yang berbeda sedikit.
Caleb
2
@dogbane saya gunakan Ctrl+\ , tapi ini jelas masalah preferensi pribadi. Anda tidak akan menyukai pilihan saya jika Anda tidak memiliki cara mengetik Ctrl+\ di papan ketik tanpa kontraksi jari.
Gilles 'SANGAT berhenti menjadi jahat'
17

Dalam tmux dengan konfigurasi default, menekan Ctrl + B dua kali mengirim satu Ctrl + B ke aplikasi.

Riccardo Murri
sumber
6

Anda dapat menggunakan perintah tmux send-prefix. Ini akan mengirimkan awalan mengikat kunci tmux Anda ke jendela saat ini

Misalnya, di .tmux.conf:

set-option -g prefix C-a
bind-key v send-prefix

Kemudian, menekan Ctrl-a+ vakan mengirim Ctrl-ake terminal.

diabloneo
sumber
0

Anda dapat mencoba menggunakan Page Up;)

Simon D
sumber