当使用多项术语在emacs中运行终端时,我希望能够将命令粘贴到多项窗口中,然后运行它。目前,当我这样做时,粘贴的项目确实出现在多项输入窗口中,但是,如果我按Enter键,则忽略该命令。它也没有出现在终端的历史中。例如,我正在粘贴
echo“你好”
它看起来有效 - 我看到提示后的文字。但是当我点击输入时它不会执行。我正在使用多项:http://www.emacswiki.org/emacs/MultiTerm
答案 0 :(得分:11)
默认功能yank
不适用于multi-term
或更多
准确地使用term-mode
,因为没有“真正”插入。
要粘贴,您必须使用绑定的函数term-paste
默认情况下, S-insert 。当然,你可以绑定 C-y
在term-mode
(add-hook 'term-mode-hook (lambda ()
(define-key term-raw-map (kbd "C-y") 'term-paste)))
答案 1 :(得分:6)
在术语模式(多学期使用)中,有两种输入模式:
您可以使用 C-c C-j 切换到行模式 拉动文本,切换回字符模式 C-c C-k 并运行该命令。我认为char-mode是有效的输入模式 就像你期望终端输入一样。例如,如果您键入 在命令行上的东西,然后用 C-x 剪切它 C-y 将粘贴您从命令行剪切的内容。我认为 行模式作为您期望从文本中获得的输入模式 emacs中的缓冲区。
有关两种输入模式的详细信息,请检查 this page