2012-04-08 35 views
2

我已經使用emacs進行erlang編程。根據http://emacswiki.org/emacs/CompileCommand,我已經配置了c-c c進行重新編譯。 在emacs框架中,有6個窗口是打開的,前3個用於erlang源代碼讀寫。 在下面的窗口中,其中一個用於compie窗口。 但是當不同的窗口被激活並重新編譯時,編譯窗口將會隨機切換。如何修復它在一個特定的窗口?在emacs中如何控制哪些窗口顯示編譯結果?

+2

這與在http://stackoverflow.com/questions/1002091/how-to-force-emacs-not-to-display-buffer-in中的問題非常相似-a-specific-window – 2012-04-08 13:58:59

+1

我認爲這更多的是這個問題的反面 - 我們不想*避開*特定的窗口;我們希望避免除特定窗口之外的所有窗口。 – phils 2012-04-08 15:58:39

回答

5

如果你開始在閱讀˚Fdisplay-bufferRET(或M-手冊中:(info "(elisp) Choosing Window")RET),你會發現一堆的方法,使你可以修改行爲。

它可以得到一個有點複雜,但這樣的事情可能是你在你重新編譯功能需要:

(let ((display-buffer-overriding-action 
     '(display-buffer-reuse-window))) 
    (compile)) 

我總是用專用的窗口時,我希望大家都能夠在一個地方,讓你也有可能發現有用的考慮:

M-:(info "(elisp) Dedicated Windows")RET

我用的是toggle-window-dedicated函數從Pin Emacs buffers to windows (for cscope)(另請參閱How do I make this Emacs frame keep its buffer and not get resized?

+0

非常感謝。 – 2012-04-08 15:52:18

相關問題