ऑर्ग-मोड ( C-c a a
) में आज का एजेंडा तैयार करना फाइलों को खोलता है org-agenda-files
। मैं नहीं चाहता कि Emacs इन अतिरिक्त बफ़र्स को खोलें।
क्या Emacs को इन बफ़र्स को न खोलने का एक आसान तरीका है? (या क्या समान है, अगर एजेंडा कॉल करने से पहले वे खुले नहीं थे, तो उन्हें स्वचालित रूप से बंद कर दें?)।
अपडेट करें:
यह @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)
अफसोस, यह अभी भी सही नहीं है, क्योंकि अब एजेंडा में एक घटना पर क्लिक करने से संबंधित ऑर्गन फ़ाइल नहीं खुलती है।