Почему Emacs local-set-key не перезаписывает глобально установленный ключ в хуке режима? - PullRequest
0 голосов
/ 10 марта 2019

В Emacs 'tide-mode (разработка машинописного текста) я бы хотел использовать Mq, который обычно связан с fill-paragraph, для запуска tide-format.У меня есть перехват режима типа

(defun setup-tide-mode ()
...
  (local-set-key [M-q] 'tide-format)
  (describe-key [M-q]))
(add-hook 'typescript-mode-hook #'setup-tide-mode)

Когда я открываю файл машинописи, я вижу буфер *Help*, который действительно показывает

<M-q> runs the command tide-format ...

И все же, когда я затем запускаю C-h k M-q дляопишите привязку ключей Mq, я получаю

M-q runs the command fill-paragraph

Существует подозрительная разница в распечатке между <M-q> и M-q.Возможно, это что-то говорит мне, но я не знаю, что.

Каков правильный способ локальной перезаписи M-q для запуска другой команды?

1 Ответ

1 голос
/ 10 марта 2019

Вы хотите использовать [?\M-q] вместо [M-q], потому что ?\M-q - это событие, генерируемое при нажатии модификатора Alt / Meta вместе с клавишей Q.

...