Bagaimana cara mengkonfigurasi Ctrl-Kiri dan Ctrl-Kanan sebagai pintasan kata sebelumnya / berikutnya untuk bash (saat ini alt-b dan alt-f)?
Bagaimana cara mengkonfigurasi Ctrl-Kiri dan Ctrl-Kanan sebagai pintasan kata sebelumnya / berikutnya untuk bash (saat ini alt-b dan alt-f)?
Jawaban:
Jawaban yang benar tergantung pada terminal mana yang Anda gunakan.
Untuk Terminal Gnome atau versi xterm terbaru, masukkan ini ke ~ / .inputrc:
"\e[1;5C": forward-word
"\e[1;5D": backward-word
Untuk Putty, letakkan ini di ~ / .inputrc Anda:
"\eOC": forward-word
"\eOD": backward-word
Untuk rxvt, letakkan ini di ~ / .inputrc Anda:
"\eOc": forward-word
"\eOd": backward-word
Anda mungkin bisa melepaskan semua itu di ~ / .inputrc.
Dalam semua kasus, Anda juga harus meletakkan ini di ~ / .bashrc (atau ~ / .zshrc) Anda:
export INPUTRC=~/.inputrc
Jika itu tidak berhasil, atau Anda memiliki terminal yang berbeda, buka terminal Anda dan ketik Ctrl+ V Ctrl+ ->. Kemudian gunakan itu sebagai ganti "\e[1;5C"
atau di "\eOC"
atas. Ulangi untuk Ctrl+<- .
Perhatikan bahwa Anda perlu menulis urutan pelarian keyboard menggunakan sintaks inputrc , mis
\C
berarti kontrol\e
berarti escape (yang muncul seperti ^[
saat mengetiknya menggunakan Ctrl + V di atas)"\e[1;5C": forward-word
. Dan lakukan Ctrl
+ V
untuk Ctrl
+ Left Arrow
juga.
Jika Anda menggunakan ZSH, Anda perlu menggunakan metode yang berbeda, karena, mengutip bagian yang relevan dari panduan ZSH ArchLinux :
Zsh tidak menggunakan readline #like bash #, melainkan menggunakan zle sendiri dan lebih kuat.
Itu tidak membaca / etc / inputrc atau ~ / .inputrc.
Setelah membaca panduan itu, saya pikir saya memerlukan sumber ZSH yang modren untuk mendapatkan ide umum tentang bagaimana melakukan ini, dan jadi saya menemukan file oh-my-zsh yang menggambarkan perilaku yang saya inginkan, saya menyalin bagian-bagian yang relevan. ingin ke ~ / .zshrc saya:
bindkey -e #Use emacs mode, it's more sane for beginners
bindkey '^[[1;5C' forward-word # [Ctrl-RightArrow] - move forward one word
bindkey '^[[1;5D' backward-word # [Ctrl-LeftArrow] - move backward one word
# Also, If you want to copy paste this into your zshrc,
# I'm pretty sure you would have to add this at the top :
# setopt interactive_comments