M-RET и M-UP / DOWN не работают в Emacs-режиме в консоли / терминале - PullRequest
13 голосов
/ 05 апреля 2011

Я использую emacs23 в Ubuntu 32-bit 10.04 / 10.10 с GNOME и Compiz.

Нажатие M-RET в простом списке org-mode в Emacs (GUI) вставляет новый элемент. Нажатие M-Up перемещает элемент вверх в списке.

Эти клавиши не работают должным образом в emacs -nw в терминаторе и gnome-terminal. Клавиша M-Up ничего не делает, тогда как клавиша M-RET просто перемещает курсор на одну строку вниз и выравнивает позицию. Клавиши также не «работают» в xterm, который вставляет вместо \215. Нажатие ESC-RET или ESC-Up вместо этого вызывает ожидаемую функциональность. Те же проблемы возникают, если я запускаю emacs -nw на автономном сервере, доступ к которому осуществляется через ssh в Terminator, gnome-terminal и xterm.

Я искал ответ на этот вопрос как в общем, так и в списке org-mode Gmane, но ничего не нашел. Это известная проблема с org-mode или она связана с эмулятором терминала и / или диспетчером окон?

Ответы [ 3 ]

3 голосов
/ 24 июля 2011

Помимо клавиш в моем вопросе, S-TAB, S-Left, S-Right, S-Up и S-Down не работали над ssh и PuTTY. Использование определенных ключей в соединении TTY (ssh, screen, PuTTY) является известной проблемой. Альтернативные ключи включены в org-mode как подробно здесь .

2 голосов
/ 21 октября 2016

Существуют альтернативные комбинации клавиш

для эквивалента M-RET М к-м «<return>» - это клавиша «Return», в то время как emacs работает в графическом пользовательском интерфейсе.

"RET" - это клавиша Return while, пока emacs работает в терминале.

«RET» также эквивалентен «C-m» (【Ctrl + m】). (http://ergoemacs.org/emacs/emacs_key_notation_return_vs_RET.html)

в качестве эквивалента для M- <up/down> вы можете использовать

ESC-<up>
ESC-<down>
2 голосов
/ 06 апреля 2011

Меню эмулятора терминала не позволяет ключу M, предназначенному для Emacs, передаваться в Emacs. Чтобы Emacs получил ключ M, как и предполагалось, вы можете либо использовать Esc, либо отключить строку меню и использовать ключ M в Emacs как обычно.

ДОБАВЛЕНО:

Для xterm, если вы нажмете CTRL + Mouse Button 1, вы увидите «Meta send Escape». Вам нужно убедиться, что эта опция включена или включена, чтобы M работал как в Emacs.

...