Mac ;9D и ;9C от alt-left и alt-right

Mac ;9D и ;9C от alt-left и alt-right

Я привык использовать alt-влево для перехода к предыдущему слову (если вы используете vim, это «b») и alt-вправо для перехода к началу следующего слова.

Однако на терминале Mac (iterm и iterm2) я получаю ;9D и ;9C соответственно. Я могу использовать fn+left, чтобы перейти к началу строки, но я все равно нахожу это действительно неудобным.

Любые идеи, как это исправить?

решение1

Если вы используете bashоболочку, добавьте следующее в свой файл ~/.inputrc:

"\e[1;9C": forward-word
"\e[1;9D": backward-word

Нажмите Ctrl-Xили Ctrl-Rперезапустите оболочку, чтобы применить изменения.


Примечание:Часть управляющих последовательностей, приведенных выше, в частности 1, мне пришлось угадывать на основе того, что использует Xterm.

решение2

В терминале в OS X Lion это работает как и ожидалось. В противном случае вы можете попробовать Mb и Mf (клавиша Meta может быть option или escape в зависимости от вашей программы терминала).

решение3

Вы можете сопоставить Option- Left/Right Arrowс Esc- b/fв настройках терминала. Они будут работать с bash (оболочкой по умолчанию) и любой программой с сочетаниями клавиш, совместимыми с Emacs.

Терминал > Настройки > Настройки > [профиль] > Клавиатура

Нажмите кнопку со знаком «плюс», чтобы добавить новое сопоставление:

Клавиша: курсор влево
Модификатор: опция
Действие: отправить строку в оболочку
Строка: \033b

(Нажмите клавишу Esc, чтобы ввести «\033».)

Затем добавьте еще одно сопоставление для «курсора вправо» с «\033f».

Начиная с Mac OS X Lion 10.7, раскладка клавиатуры Терминала по умолчанию включает эти две записи, поэтому нет необходимости делать это.

Связанный контент