Dalam readline(3)
saya harus dapat memetakan Control-Backspace ke fungsi yang sama dengan Control-W (unix-kill-rubout). Terlepas dari apa yang saya masukkan ~/.inputrc
saya tidak bisa mendapatkan ini untuk diakui.
\C-\b: unix-kill-rubout
... misalnya tidak berfungsi. Bisakah saya memetakan Control-Backspace ke unix-kill-rubout di readline?
Sebagai graywh menunjukkan backspace sering diwakili oleh
^?
. Untuk mengikat ke ctrl+ bksp di.inputrc
file Anda, Anda mungkin perlu memodifikasi perpustakaan readline Anda. Tutorial ubuntu ini termasuk.keytab
file baru yang dapat menggantikan output default.Di sistem saya ini izinkan saya menambahkan
"\e[9;3~": backward-kill-word
ke.inputrc
.Karena perilaku readline agak bervariasi berdasarkan sistem Anda, perlu dicatat bahwa saya menggunakan Konsole di Kubuntu.
sumber
sumber
Saya ragu terminal Anda akan mengirim kode khusus untuk ctrl-backspace. Backspace biasanya ctrl- ?, dan Anda tidak bisa menambahkan pengubah ctrl lain ke karakter ctrl.
Salah satu alternatif mungkin untuk meminta terminal Anda mengirimkan urutan pelarian khusus untuk Ctrl-Backspace, lalu memetakannya di konfigurasi readline Anda.
sumber
^H
resmi. Hapus adalah^?
, tetapi terminal saya mengirimkan versi hapus ketika backspace ditekan. Inilah sebabnya ikatan\C-\b
tidak berhasil.Ini berfungsi untuk saya (di urxvt, bash):
sumber
Untuk terminal linux, Anda dapat melakukannya dengan memodifikasi keymap yang Anda muat saat startup. Di ubuntu default saya memuat
/etc/console-setup/cached.kmap.gz
. Jika Anda menemukan entri yang sesuai dengan Ctrl-Backspace (mungkin Control-Delete sudah terdaftar sebagai Backspace) maka Anda dapat mengubahnya keControl_w
. Tidak yakin tentang emulator terminal, tetapi konsole (emulator terminal KDE default) memiliki pengaturan yang cukup bagus untuk keybinds. Semoga itu bisa membantu :)Chris
sumber
Untuk pengguna Mac yang masuk ke beberapa sistem Linux:
Jika Anda tidak memiliki akses ke .inputrc atau file konfigurasi lainnya pada sistem yang sedang Anda akses dan ingin semuanya berfungsi secara universal, apa pun sistem yang Anda masuki, berikut adalah solusi GUI menggunakan Iterm2.
Saya menginstal Iterm2 pada mac saya dari baris perintah pada mac saya dengan menggunakan brew ( https://brew.sh )
Cara mengikat urutan tombol ke tombol kontrol di Iterm2
Unduh aplikasi gratis "Kode Kunci" dari app store. Instal dari tautan di bawah dan kemudian buka.
Tekan tanda Ctrl+ some keydalam hal ini saya akan menggunakan Ctrl+ w.
Kode heks di kotak merah adalah kode yang ingin kita kirim ke terminal
Sekarang petakan urutan kunci Anda di Iterm2 dengan membukanya dari folder Applications-> Preferences-> Keys -> +.
sumber