2

Когда я нажимаю эту комбинацию клавиш, я слышу звонок, и в буфер печатаются символы 0D вместо команды, привязанной к исполняемому аккорду клавиши (в данном случае org-table-delete-column). M-<left-arrow> работает нормально, однако.

После некоторого копания я думаю, что M-<any-arrow> работает только потому, что iTerm настроен на отправку определенных шестнадцатеричных последовательностей в терминал для этих ключей. Когда я создал новый профиль без этих привязок, все клавиши M-<arrow> вызывали печать колоколов и символов.

Итак, у меня есть несколько вопросов. Прежде всего, что это за шестнадцатеричные последовательности? Какие последовательности мне понадобятся, чтобы получить M-S-<left-arrow> для правильной выдачи? Почему в iTerm все это уже не определено? И, наконец, зачем они у нас вообще? Почему iTerm не может просто отправить клавиши, когда они нажаты, на терминал и заставить их работать так, как они должны, за исключением тех аккордов клавиш, которые нужны iTerm и Mac OS X

1 ответ1

1

Попробуйте добавить эти строки в ~/.emacs:

(define-key input-decode-map "\e[1;10A" [S-M-up])
(define-key input-decode-map "\e[1;10B" [S-M-down])
(define-key input-decode-map "\e[1;10C" [S-M-right])
(define-key input-decode-map "\e[1;10D" [S-M-left])

Используйте cat -v или C-v в оболочке, чтобы увидеть escape-последовательности.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .