Я не можу говорити за iTerm, але це клавішні зв’язки, які я використовував для вирішення цієї проблеми в терміналі GNOME, на Fedora 19, що працює з ZSH 5.0.7 з Oh-my-zsh:
bindkey "\e[1;3C" forward-word
bindkey "\e[1;3D" backward-word
де \e== послідовність ключа-ключа (як це зафіксовано у розділі 4.1.1 )
і [== O(великі регістри O; як це зафіксовано у розділі 4.2.1 ), у деяких випадках. Бо, наприклад, tmuxця заміна мені потрібна, проте без tmuxнеї не потрібно робити заміни і [==[
Ключові коди послідовності можна отримати, використовуючи catта натискаючи потрібну послідовність. Наприклад, результати пресування <Alt+Right>слід інтерпретувати так:
$ cat
^[[1;3C
^[== \e== Послідовність ключа-ключа
[== [без tmuxАБО
[== O(великі регістри о) зtmux
1;3 == Я не впевнений у цьому, але це має логічно означати <Alt>
C == Права клавіша зі стрілкою
Потім ця послідовність задається bindkeyу ~/.zshrcфайлі для збереження, як перший аргумент, і пов'язана , що означає, що натискання клавіші в аргументі 1 виконує певну команду редактора (або віджет в zsh термінах), до віджета, який у першому рядок наведеного вище прикладу є forward-word.
Після ~/.zshrcповторного використання цих двох команд до нього слід додати:
$ source ~/.zshrc
Тепер одне роздратування в моїй системі полягає в тому, що саме ця комбінація викликала емулятор терміналу видавати звуковий сигнал щоразу, коли команда була видана, це я усунув, відключивши
'Edit'->'Profile Preferences'->'Terminal Bell' прапорець.
FOO=BARце одне слово до zsh і 2 слова bash. Аналогічно, якщо ви встановите курсор на кінецьfoo --barта зробите alt + backspace, у bash ви будете мати,foo --а в zsh - матиметеfoo. Zsh додає багато можливостей для башти, але він також має безліч божевільних значень за замовчуванням.