É possível configurar como um buffer é aberto (no mesmo quadro / janela ou em um quadro / janela diferente) usando display-buffer-alist
. Consulte as referências abaixo para aprender mais sobre essa variável.
Solução
Precisamos dizer ao emacs para sempre abrir buffers terminando COMMIT_EDITMSG
em uma janela, mas não na mesma *magit ..*
janela ( ).
Adicione o seguinte snippet ao init.el
depois (require 'magit)
para especificar esta ação.
(add-to-list 'display-buffer-alist
'(".*COMMIT_EDITMSG". ((display-buffer-pop-up-window) .
((inhibit-same-window . t)))))
Repartição da solução
display-buffer-alist
é um alist
que chama a FUNCTION
(ou uma lista de funções) com ALIST
parâmetros quando a CONDITION
é verdadeiro. O display-buffer-alist
pode ser representado como,
'(CONDITION . (FUNCTION . ALIST))
- Aqui
CONDITION
é que o nome do buffer termina com COMMIT_EDITMSG
e é representado por ".*COMMIT_EDITMSG"
.
- A
FUNCTION
chamada é display-buffer-pop-up-window
como queremos criar uma janela para esse buffer. Em vez de especificar a função por si só, ela é colocada como uma lista de uma única função, (display-buffer-pop-up-window)
para que mais funções possam ser facilmente adicionadas à lista, se necessário no futuro.
- O
ALIST
contém (inhibit-same-window . t)
porque não queremos que esse buffer seja aberto na mesma janela.
Referências