2012-01-04 47 views
8

當使用多項術語在emacs中運行終端時,我希望能夠將命令粘貼到多術語窗口中,然後運行它。目前,當我這樣做時,粘貼的項目確實出現在多項輸入窗口中,但是,如果我按下回車鍵,命令將被忽略。它也沒有出現在終端的歷史中。例如,我在粘貼在Emacs中,如何粘貼到多項術語

回聲「你好」

它看起來像它的工作 - 我看到下面的提示文字。但是當我輸入它不會執行。我使用的是多期:http://www.emacswiki.org/emacs/MultiTerm

回答

11

默認功能yank因爲猛拉不是«真正»插不multi-term以上 工作精確地term-mode。 要粘貼,您必須使用功能term-paste,該功能默認綁定到 S插入。當然,可以綁定賽揚 使用它在term-mode

(add-hook 'term-mode-hook (lambda() 
          (define-key term-raw-map (kbd "C-y") 'term-paste))) 
+0

我說這對我的.emacs,但沒有喜悅。 – ebeland 2012-01-14 14:45:36

+0

@ebeland:我用'-q'試過了它,它可以工作,因此配置中必然會出現問題。試試看:'emacs -q'然後切換到'* scratch *'緩衝區並粘貼(或寫入)前面的代碼片段並對其進行評估(使用'Cx Ce'或'Mx eval-buffer RET'),然後加載' multi-term.el'並用'Mx multi-term'開始一個新術語。 – Daimrod 2012-01-14 15:23:09

+0

當我進來時,我會在星期一給它一個鏡頭。感謝您的幫助! – ebeland 2012-01-14 15:29:14

5

在術語模式(其多術語使用)有兩個輸入模式:

  • 線模式
  • 字符模式

您可以切換到行模式抄送C-Ĵ然後 猛拉文本,切換回炭模式C-CC-K 和運行命令。我認爲char-mode可以像你期望的終端輸入一樣工作的輸入模式 。例如,如果您在命令行上鍵入 ,並用C-x,然後 C-y將其剪下,則會粘貼您從命令行剪下的內容。我認爲行模式的 作爲您希望從emacs中的文本 緩衝區中獲得的輸入模式。

有關兩種輸入方式的細節檢查 this page