Ini membuat saya gila juga, namun saya tidak ingin perbaikan spesifik Terminal karena saya tidak menggunakan Terminal, dan untuk dapat SSH ke dalam kotak OSX saya harus menggunakan ikatan kunci yang benar juga.
Juga, secara pribadi, saya tidak peduli tentang ⌥kunci seperti yang dibahas sebelumnya; Saya ingin mempertahankan kombinasi ctrl+ ←/ →yang biasa saya gunakan di Linux.
Untuk mengatasi masalah ini, saya menambahkan yang berikut ke ~/.profile
:
bind '"\e[5C": forward-word'
bind '"\e[5D": backward-word'
bind '"\e[1;5C": forward-word'
bind '"\e[1;5D": backward-word'
Perhatikan dua yang pertama berlaku untuk bash di Terminal ; dua yang terakhir berlaku untuk bash di iTerm2 dan koneksi ssh masuk . Jangan tanya kenapa emulasi keyboard berbeda;)
Sebagai catatan, saya dapat menemukan apa kode kunci sebenarnya berkat petunjuk dari jawaban stackoverflow ini : Anda dapat menjalankan cat > /dev/null
untuk memantau kode kunci yang tepat yang dikirim selama kombinasi tombol.
(Perhatikan bahwa bagi saya, ketika saya menjalankan cat > /dev/null
dan menekan ctrl+ ←itu menghasilkan ^[[1;5D
. Kode kunci Anda mungkin berbeda , tetapi yang pertama ^[
direpresentasikan sebagai \e
, seperti yang ditunjukkan dalam contoh kode saya.)
BTW, jika Anda ingin melihat semua bash keybindings aktif, jalankan bind -p
.