2017-06-26 27 views
1

我在dotspacemacs/user-config中設置(setq split-width-threshold 100),以便在窗口足夠寬的情況下使各種緩衝區水平分割。這適用於magit狀態等。如何使spacemacs編譯緩衝區水平分割?

但是,編譯日誌緩衝區似乎忽略了這一點,並始終在底部打開。

如何使編譯緩衝區堅持split-width-threshold?或者,如何讓它始終水平分割?

我對emacs和spacemacs都很陌生。

回答

0

another answer

(setq split-height-threshold nil) 
(setq split-width-threshold 0) 

如果你想這些設置隻影響compile

(defadvice compile (around split-horizontally activate) 
    (let ((split-width-threshold 0) 
     (split-height-threshold nil)) 
    ad-do-it)) 
+0

正如我寫我已經這樣做,但它沒有預期的效果。這就是我想要解決的問題。我猜這與Spacemacs有關(我相信其他答案涉及到vanilla emacs),但我可能是錯的。 – Jostein

+0

你在你的文章中說你將分割寬度閾值設置爲100而不是0,對嗎?你有沒有嘗試將它設置爲0? 這可能是Spacemacs做了一些棘手的緩衝區放置,但我不知道有任何這樣的行爲。你可以在vanilla emacs配置中試試看看發生了什麼。 –

+0

是的,我的確嘗試了0和100,不管怎麼說,這並不重要,因爲我的寬度超過了100,而且它的工作方式與magit緩衝區一樣。但由於某種原因,編譯緩衝區似乎不受閾值的限制。我可以去spacemacs本身挖掘或嘗試瞭解更多關於emacs配置,但我希望有人可能有同樣的問題.. – Jostein

0

的原因編譯不服從你的設置,是因爲spacemacs自帶的默認啓用purpose-mode。如果你使用它,那麼就可以根據需要修改目的佈局。但是,如果您沒有使用purpose-mode,那麼禁用它會爲我解決問題。要試用一下,你可以做SPC SPC purpose-mode RET然後(只有一個窗口打開)運行編譯。

+0

感謝您的答案,但是這也不適用於我。我沒有安裝目的層,SPC SPC中沒有可用的模式。 – Jostein

+0

@Jostein所以現在我想知道。我以這種方式爲自己設法解決了這個問題,所以我馬上得出結論,這是根本原因。然而,從那以後,我刪除了特定模式軟件包,但它不再適用於我。所以我想這只是一次。我想,在開始這個化身時,我應該對我的「運氣」財產提出一些觀點。韋爾普。對不起,誤導性的答案。 – nert