Что вы хотите, так это указать буфер как «специальный дисплей». Это делает именно то, что вы хотите.
Вы можете настроить одну или обе эти опции (переменные):
special-display-regexps
special-display-buffer-names
Это простой способ. Emacs любит считать эти опции устаревшими с версии 24.3 и рекомендует вместо них использовать невероятно сложную опцию display-buffer-alist
.
Это все, что я делаю, чтобы все буферы с именами, начинающимися и заканчивающимися на *
, отображались в своих собственных выделенных фреймах:
(setq special-display-regexps '("[ ]?[*][^*]+[*]"))
Чтобы кадры специального дисплея имели разные свойства (т. е. параметры кадра), например фон другого цвета, настройте параметр special-display-frame-alist
.
По сути, это определение, которое я использую:
(setq special-display-alist
'((font . "-*-Lucida Console-normal-r-*-*-14-*-*-*-c-*-iso8859-1")
(width . 80)
(height . 14)
(mouse-color . "Yellow")
(cursor-color . "Yellow")
(menu-bar-lines . 1)
(foreground-color . "Black")
(background-color . "LightSteelBlue")
(top . 0)
(left . 0)
(unsplittable . t)
(user-position . t)
(vertical-scroll-bars . right)))
Но я рекомендую вам использовать Customize, чтобы установить значение всех таких параметров.
person
Drew
schedule
11.08.2013