La generazione dell'agenda di oggi in modalità Org ( C-c a a
) apre i file in org-agenda-files
. Non voglio che Emacs apra questi buffer extra.
C'è un modo semplice per dire a Emacs di non aprire questi buffer? (o qual è lo stesso, chiuderli automaticamente se non fossero aperti prima di chiamare l'agenda?).
AGGIORNARE:
Questa è una versione più compatta della soluzione fornita da @lawlist:
(require 'dash)
(defun my-org-keep-quiet (orig-fun &rest args)
(let ((buffers-pre (-filter #'get-file-buffer (org-agenda-files))))
(apply orig-fun args)
(let* ((buffers-post (-filter #'get-file-buffer (org-agenda-files)))
(buffers-new (-difference buffers-post buffers-pre)))
(mapcar (lambda (file) (kill-buffer (get-file-buffer file))) buffers-new))))
(advice-add 'org-agenda-list :around #'my-org-keep-quiet)
(advice-add 'org-search-view :around #'my-org-keep-quiet)
(advice-add 'org-tags-view :around #'my-org-keep-quiet)
Purtroppo, questo non è ancora perfetto, poiché ora facendo clic su un evento nell'agenda non si apre il file org corrispondente.