Emacs (setq ns-pop-up-frames nil) 不工作

Emacs (setq ns-pop-up-frames nil) 不工作

我在 Ubuntu 13.10 下使用 Emacs 24.3.1

我需要 Emacs 在同一視窗中開啟所有新檔案。

根據EmacsWiki:一個窗口,我補充說

(setq pop-up-windows nil)

到我的配置文件,但它不起作用。

我試過如何讓 emacs 在一個視窗中開啟所有緩衝區 (debian/linux/gnome) 的答案的建議:

(custom-set-variables '(pop-up-frames nil))

但效果並不好。

我試過emacs 變數在原始框架的答案中“打開”的建議:

(setq ns-pop-up-frames nil)

但這沒有用。

這應該是簡單的配置,相當煩人..

感謝你的幫助,

阿彌陀。

答案1

我認為在版本 24.* 左右,這種行為的定制方式發生了某種變化(不太確定)。我想display-buffer-alist這就是你正在尋找的東西。

所以類似的事情

(add-to-list 'display-buffer-alist
             '("^[^\\*].*[^\\*]$" display-buffer-same-window) t)

可能適合你。正規表示式是緩衝區名稱將與之相符的正規表示式(該正規表示式假設檔案名稱不以星號開頭和結尾)。

另請參閱 的文檔display-buffer,它決定在哪裡顯示緩衝區。那裡有幾個類似same-window, reuse-window,的函數pop-up-{window,frame}

順便說一句,ns-*函數是針對 OS X 的,它們在 Linux 上可能不會做任何事情。

相關內容