Скинуть текст в терминал, работающий в Emacs

Когда скрипт генерирует html-форму и действие этой формы http POST возвращается к той же форме.

11
задан hekevintran 5 June 2010 в 03:39
поделиться

3 ответа

Когда ничего не помогает, я просто выделяю текст и нажимаю Правка-> Копировать, затем щелкаю правой кнопкой мыши в другом буфере emacs и нажимаю Вставить.

-1
ответ дан 3 December 2019 в 08:02
поделиться

Под словом «в терминале», я полагаю, вы имеете в виду, что используете встроенную программу Emacs. в эмуляторе терминала. Обычно эмулятор терминала передает большинство ключей точно в том виде, в котором они введены в процесс оболочки. Введите C-c C-j в буфере терминала, чтобы перевести его в состояние, в котором доступны обычные привязки клавиш Emacs.Вы увидите изменение строки режима с (Term: char run) на (Term: line run) .

Приложение:

Дергать текст, не выходя из символьного режима, немного сложно; однако соответствующая функция - это термопаста (а не yank , которая просто вставляет текст в буфер терминала, не отправляя его подчиненному процессу). term-paste немедленно отправит последнее уничтожение подчиненному процессу, но не обеспечивает причудливую функцию восстановления, к которой вы, вероятно, привыкли (например, My для циклического просмотра предыдущих убийств ). Вы можете запустить term-paste как расширенную команду: C-c M-x term-paste RET .

Вероятно, самое простое решение - просто временно перейти в линейный режим ( Cc Cj ), когда вам есть что вставить, а затем сразу же вернуться в режим char ( Cc Ck ) . Или, что еще проще, просто оставайтесь в режиме онлайн все время. Я часто делаю это, когда у меня есть терминал, подключенный к сеансу Oracle SQL * Plus. Я редко замечаю разницу, но получаю всевозможные удобные функции Emacs, например, возможность набирать M-p для циклического перебора длинного, ранее набранного оператора SQL.

Я бы предположил, что вы всегда можете начать в линейном режиме вот так:

(add-hook 'term-mode-hook 'term-line-mode)

... но у меня это не работает. Не знаю почему.

15
ответ дан 3 December 2019 в 08:02
поделиться

В буфере при работающем терминале переведите терминал в линейный режим с помощью C-c C-j . Чтобы вставить текст, нажмите S-Insert (это Shift-Insert). Если вам нужно, чтобы терминал после этого вернулся в символьный режим, это C-c C-k .

1
ответ дан 3 December 2019 в 08:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: