Saya tidak dapat berbicara untuk iTerm tetapi ini adalah keybindings yang saya gunakan untuk menyelesaikan masalah ini di bawah Terminal GNOME, pada Fedora 19, menjalankan ZSH 5.0.7 dengan Oh-my-zsh:
bindkey "\e[1;3C" forward-word
bindkey "\e[1;3D" backward-word
where \e
== Escape-key-sequence (seperti yang didokumentasikan pada bagian 4.1.1 )
dan [
== O
(huruf besar O; seperti yang didokumentasikan pada bagian 4.2.1 ), dalam beberapa kasus. Untuk misalnya dalam tmux
substitusi ini diperlukan bagi saya, namun tanpa tmux
itu diperlukan bahwa tidak ada substitusi yang dilakukan dan [
==[
Kode kunci untuk suatu urutan dapat diperoleh dengan menggunakan cat
dan menekan urutan yang diinginkan. Sebagai contoh, hasil dari penekanan <Alt+Right>
harus ditafsirkan seperti:
$ cat
^[[1;3C
^[
== \e
== Escape-key-sequence
[
== [
tanpa tmux
OR
[
== O
(huruf besar) dengantmux
1;3
== Saya tidak yakin tentang yang ini, tetapi secara logis artinya <Alt>
C
== Tombol panah kanan
Kemudian urutan ini diberikan bindkey
dalam ~/.zshrc
file untuk persistensi, sebagai argumen pertama, dan terikat , yang berarti bahwa keystroke dalam argumen satu akan menjalankan perintah editor tertentu (atau widget dalam istilah zsh), ke widget, yang pada widget baris contoh di atas adalah forward-word
.
The ~/.zshrc
harus kembali bersumber setelah dua perintah ini ditambahkan untuk itu dengan:
$ source ~/.zshrc
Sekarang satu gangguan pada sistem saya adalah bahwa kombinasi khusus ini menyebabkan emulator terminal mengeluarkan bunyi bip setiap kali perintah dikeluarkan, ini saya perbaiki dengan menonaktifkannya.
'Edit'->'Profile Preferences'->'Terminal Bell'
kotak centang.
FOO=BAR
adalah satu kata untuk zsh dan 2 kata untuk bash. Demikian pula, jika Anda mengatur kursor ke akhirfoo --bar
dan melakukan alt + backspace, di bash Anda akan memilikifoo --
dan di zsh Anda akan memilikifoo
. Zsh menambahkan banyak fitur ke bash, tetapi ia juga memiliki banyak default gila untuk ditimpa.