Можно настроить способ открытия буфера (в том же кадре / окне или в другом кадре / окне), используя display-buffer-alist
. Обратитесь к ссылкам ниже, чтобы узнать больше об этой переменной.
Решение
Мы должны указать emacs всегда открывать буферы, оканчивающиеся COMMIT_EDITMSG
окном, но не в том же ( *magit ..*
) окне.
Добавьте следующий фрагмент кода init.el
после, (require 'magit)
чтобы указать это действие.
(add-to-list 'display-buffer-alist
'(".*COMMIT_EDITMSG". ((display-buffer-pop-up-window) .
((inhibit-same-window . t)))))
Разбивка решения
display-buffer-alist
это alist
тот, который вызывает FUNCTION
(или список функций) с ALIST
параметрами, когда значение CONDITION
равно true. display-buffer-alist
Может быть представлена в виде,
'(CONDITION . (FUNCTION . ALIST))
- Вот
CONDITION
, что имя буфера заканчивается COMMIT_EDITMSG
и что представлено ".*COMMIT_EDITMSG"
.
FUNCTION
На вызов , display-buffer-pop-up-window
как мы хотим , чтобы создать окно для этого буфера. Вместо того, чтобы указывать функцию отдельно, она помещается в виде списка отдельной функции, (display-buffer-pop-up-window)
так что в будущем при необходимости можно будет легко добавить больше функций в список.
ALIST
Содержит , (inhibit-same-window . t)
как мы не хотим , чтобы этот буфер , чтобы открыть в одном окне.
Ссылки