Как настроить клавиши SHIFT+LEFT, SHIFT+RIGHT, SHIFT+HOME и SHIFT+END в терминале на Mac?

Чтобы настроить клавиши Home и End в терминале на MacBook Air (OS X 10.7.2), я определил в Terminal -> Preferences -> Keyboard:

Key     Action
----    ------
Home    \033OH
End     \033OF

Каковы коды для настройки следующих комбинаций, чтобы они работали как в Windows?

  • Shift+Left (следует выбрать символ слева)
  • Shift+вправо (следует выбрать символ справа)
  • Shift+Home (следует выбрать все символы слева)
  • Shift+End (должны выбрать все символы справа)

2 ответа

Вы можете использовать read команда для определения последовательности связывания клавиш, за которой следуют необходимые ключи

Добавьте вывод в файл ниже с префиксом "\e[ваша последовательность]"

Создайте файл в вашем домашнем каталоге ~/ называется.inputrc

$ vim ~/.inputrc

У меня есть следующие настройки для Ctrl + влево, вправо, вверх, вниз и домой и окончания клавиш

"\e[1~": beginning-of-line
"\e[4~": end-of-line
"\e[5~": history-search-backward
"\e[6~": history-search-forward
"\e[3~": delete-char
"\e[2~": quoted-insert
"\e[5C": forward-word
"\e[5D": backward-word
"\e\e[C": forward-word
"\e\e[D": backward-word

Перезапустите Terminal.app и все готово.

      Key            Action
----           ------
Home           \033OH
End            \033OF
Shift+Left     \033[1;2C
Shift+Right.   \033[1;2D
Shift+Home.    \022[1;2H
Shift+End.     \022[1;2F

Другие вопросы по тегам