Emacs (setq ns-pop-up-frames nil) не работает

Emacs (setq ns-pop-up-frames nil) не работает

Я использую Emacs 24.3.1 в Ubuntu 13.10.

Мне нужно, чтобы 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 они, скорее всего, ничего делать не будут.

Связанный контент