Я бы предложил использовать tramp
для редактирования удаленных файлов. Я предпочитаю его открывать редактор на удаленной машине. Если вы попытаетесь запустить emacs внутри буфера term-mode
, вы будете бороться с ним все время.
Если вы хотите запустить emacs внутри буфера term-mode
, вы можете использовать term-send-raw
и term-send-raw-string
. Например:
(defun term-send-backward-word()
"Move backward word in term mode."
(interactive)
(term-send-raw-string "\eb"))
<Escape> b
является то, что терминал (который eterm-color
) ожидает, что при нажатии C-<left>
. Это не обязательно совпадает с привязкой C-<left>
к term-send-raw
. Лучше всего, наверное, попробовать связать любой ключ с term-send-raw
, и если это не сработает, выполните функцию с term-send-raw-string
и свяжите это. Вы можете выяснить, какая строка должна быть, если у вас есть оболочка в буфере term-mode
, отправьте цитату и введите ключ. Вы можете отправить цитату с
(defun term-send-quote()
"Quote the next character in term-mode.
Similar to how `quoted-insert' works in a regular buffer."
(interactive)
(term-send-raw-string "\C-v"))
Это просто, как печатать C-v
в обычном терминале.
Наконец, я упомянул multi-term
. Он доступен в melpa. Он предоставляет перечисленные выше функции и имеет лучшие значения по умолчанию, чем term-mode
IMO. Но это, вероятно, дальше от того, чего вы хотите, потому что он пытается интегрировать term-mode
с остальными emacs вместо того, чтобы просто передавать вещи.
Вы спрашиваете о 'term-mode'? – jpkotta
@jpkotta Да термин-режим. – jcubic