Как отправить S-RET в Emacs в терминале?
В org-mode
, нажав M-S-RET
(meta-shift-return) создаст новый TODO
на новой линии. Эта последовательность клавиш отправляет M-RET
в Emacs через мой терминал. Я проверил это с C-h c ESC-S-RET
, который возвращает M-RET is undefined
в мини-буфере.
Я использую Snow Leopard с Emacs 23.2.1, запущенным в Terminal.app. Нет возможности определить RET
последовательность в настройках клавиатуры терминала.
Любая идея, что является причиной пропавших без вести SHIFT
? Обходные?
5 ответов
Вы можете заставить Emacs притвориться, что он получил S-RET
с C-x @ S RET
(обратите внимание, заглавные S
).
Это также работает для добавления элементов управления, мета, альта, гипер или супер модификаторов; тип C-x @ C-h
для списка привязок. Раздел " Ключи модификаторов" в руководстве по Emacs также упоминает об этом.
В общем, множество нажатий клавиш просто невозможно отправить через терминал, поскольку терминалы эмулируют старый протокол, который допускает только 256 отдельных ключей (или, может быть, только 128).
Скорее всего, когда вы нажимаете S-RET, Terminal.app делает то же самое, что и при нажатии RET. Таким образом, Emacs не может различить эти два случая.
Перекрестные ссылки на другие вопросы и ответы:
Если вы используете Xterm, то modifyOtherKeys
опция может облегчить эту привязку. Подробности смотрите ниже:
Отправить "C-(" в Emacs в терминале VT100/xterm (терминал Mac OS X)?
Я подозреваю, что Emacs распознает эти коды по умолчанию, но если нет, то также вижу input-decode-map
как описано здесь: Связывание M-
Смотрите объяснение и альтернативные ярлыки для TTY здесь.
Некоторые из них работали для меня в терминале в Ubuntu Linux (как локально, так и через SSH), но, похоже, не все из них работают. Например, альтернатива, предусмотренная для S-RET
(который я ожидал запустить org-table-copy-down
) вместо запуска org-clone-subtree-with-time-shift
по какой-то причине. Тем не менее, я нашел список полезных альтернатив, особенно те, которые с M-
префикс. Например ESC UP
за M-UP
перемещать текст в таблицах.
Хоть это и много лишних нажатий клавиш, оказывается, чтоorg-mode
есть альтернатива:
C-c C-x <shift> m
т.е.C-c C-x M