Я использую 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 они, скорее всего, ничего делать не будут.