2010-12-06 53 views
1

The GNU Emacs Manual說:在Emacs中運行多個編譯(在Windows上)?

如果你想運行在做兩項彙編,你應該開始第一個,然後重命名「*compilation*」緩衝區(可能使用rename-uniquely;看Misc Buffer),並啓動其他編譯。這將創建一個新的'*compilation*'緩衝區。

我試過這個,但它沒有像廣告中那樣工作。我運行這個version

GNU Emacs 23.2.1 (i386-mingw-nt5.1.2600) of 2010-05-08 on G41R2F1 

也就是說,Emacs for Windows,這可能是問題。也許多個編譯工作在其他平臺上運行良好?

如何在Emacs中運行多個編譯?

回答

1

Emacs手冊過時了,恐怕。如果您C-H˚F編譯RET你會看到這一點:

要同時運行多個編譯,開始一個那麼*compilation*緩衝區M-x rename-buffer重命名爲其他名稱。然後切換緩衝區並開始新的編譯。 它將創建一個新的*compilation*緩衝區。

請注意突出顯示的文字。

I filed a bug report。 (但真的這是一個足夠常見的操作,應該有一個命令。)

編輯添加:現在修復! (預期修復出現在Emacs 24)

+0

工作 - 謝謝! – 2010-12-06 23:01:37

+0

有沒有新的命令被添加? – mgalgs 2012-09-12 17:14:46

2

這裏有一個小功能到編輯緩衝區重命名爲唯一的:

(defun my-make-room-for-new-compilation-buffer() 
    "Renames existing *compilation* buffer to something unique so 
     that a new compilation job can be run." 
    (interactive) 
    (let ((cbuf (get-buffer "*compilation*")) 
     (more-cbufs t) 
     (n 1) 
     (new-cbuf-name "")) 
    (when cbuf 
     (while more-cbufs 
     (setq new-cbuf-name (format "*compilation%d*" n)) 
     (setq n (1+ n)) 
     (setq more-cbufs (get-buffer new-cbuf-name))) 
     (with-current-buffer cbuf 
     (rename-buffer new-cbuf-name))))) 

我敢肯定有很多的清理,可以在這裏完成的,但這是一個開始...

0

只要去彙編和調用重命名唯一。