в режиме term-mode, как мне запускать обычные команды emacs?


12

После запуска режима term, Emacs делегирует все нажатия клавиш на терминал, который вы используете.

Это отлично подходит для целей совместимости, но оставляет функциональность Emacs позади. Как мне вернуться к функциям Emacs (например, для переключения буфера).

Ответы:


15

В режиме term-mode есть два режима ввода . В режиме ввода по умолчанию - char-modeвсе нажатия клавиш (кроме C-c) отправляются на терминал, чтобы делать то, что он хочет.

Если вы измените режим ввода на line-mode, тогда будут работать обычные команды Emacs. Вы можете переключиться на line-modeс C-c C-j. Вы можете переключиться обратно с char-modeпомощью C-c C-k.


5
Обратите внимание, что есть также term-escape-char(по умолчанию C-c). Это нажатие клавиши не отправляется непосредственно на терминал char-mode, а транслируется на C-x. С его помощью вы можете переключаться из char-modeбуфера терминов в другое окно, используя C-c o(переведенные в C-x o), в другой буфер с помощью C-c b( C-x b), получать список буферов с помощью C-c C-b( C-x C-b) и т. Д.
Константин

1
Как я могу сделать линейный режим по умолчанию?
haknick

1
@ haknick Я не уверен, что это случайно - вам следует задать отдельный вопрос об этом и посмотреть, если кто-нибудь знает.
zck
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.