Для всіх, хто використовує iTerm, незалежно від оболонки
Всі запропоновані тут рішення, на мою думку, мають зворотний підхід. Ви, по суті, говорите своїй оболонці прослуховувати певну послідовність esc або іншу прив'язку клавіш, яку ви встановили у своєму терміналі, створюючи проблеми сумісності при переключенні оболонок (якщо ви SSH в іншу оболонку, перейдіть з BASH на ZSH тощо) і втратите деякі, якщо не всі ваші клавіші).
Більшість оболонок мають набір послідовностей за замовчуванням, які попередньо пов'язані. Крім того, хоча вони не на 100% стійкі, вони досить близькі. Таким чином, найпростіший спосіб, який я знайшов, щоб створити прив'язку клавіш для певної дії в оболонці, - це сказати вашій програмі терміналу прив’язати до типових вкладень клавіатури, які відповідають оболонкам.
Я написав стискуюче рішення для отримання вашого терміналу , щоб відповісти як можна ближче до рідного Макінтоша прив'язки тут
Відкрийте налаштування iTerm ⌘+ ,і перейдіть на Profiles
вкладку ( Keys
вкладку можна використовувати, але додавання прив'язки клавіш до вашого профілю дозволяє зберегти свій профіль і синхронізувати його на декількох комп'ютерах) та keys
під вкладку та ввести наступне:
Перемістіть курсор одним словом ліворуч
⌥+ ←Надіслати шістнадцяткові коди:0x1b 0x62
Перемістіть курсор одним словом праворуч
⌥+ →Надіслати шістнадцяткові коди:0x1b 0x66
І це повинно надати вам бажану поведінку не тільки в ZSH, але і якщо ви SSH на сервер, на якому працює BASH, irb / pry, вузол тощо.