aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaul Benencia <raul@thousandeyes.com>2026-07-08 10:56:44 -0700
committerRaul Benencia <raul@thousandeyes.com>2026-07-08 10:56:44 -0700
commitddb0a783a71f15667f152969f23156dd8c42937a (patch)
treef217dad1bbe2acc4a4752337d870971845dc67ac
parent8e5a3f9b411f19d287acd1f2ec3fa7fb14ea0247 (diff)
emacs: reset org cache after reverting a fileHEADmaster
-rw-r--r--.emacs.d/rul-emacs.org7
-rw-r--r--.emacs.d/rul-lisp/packages/rul-org.el7
2 files changed, 14 insertions, 0 deletions
diff --git a/.emacs.d/rul-emacs.org b/.emacs.d/rul-emacs.org
index 003bd5c..0b164ad 100644
--- a/.emacs.d/rul-emacs.org
+++ b/.emacs.d/rul-emacs.org
@@ -1052,6 +1052,13 @@ My org mode configuration is quite big, so I split it across multiple files.
;; (add-hook 'auto-save-hook 'org-save-all-org-buffers)
(add-hook 'org-mode-hook 'visual-line-mode)
+(defun rul/org-reset-element-cache-after-revert ()
+ "Reset Org's element cache after reverting an Org buffer."
+ (when (derived-mode-p 'org-mode)
+ (org-element-cache-reset)))
+
+(add-hook 'after-revert-hook #'rul/org-reset-element-cache-after-revert)
+
(use-package org-download
:ensure t
:config
diff --git a/.emacs.d/rul-lisp/packages/rul-org.el b/.emacs.d/rul-lisp/packages/rul-org.el
index da8bae1..12a88dc 100644
--- a/.emacs.d/rul-lisp/packages/rul-org.el
+++ b/.emacs.d/rul-lisp/packages/rul-org.el
@@ -35,6 +35,13 @@
;; (add-hook 'auto-save-hook 'org-save-all-org-buffers)
(add-hook 'org-mode-hook 'visual-line-mode)
+(defun rul/org-reset-element-cache-after-revert ()
+ "Reset Org's element cache after reverting an Org buffer."
+ (when (derived-mode-p 'org-mode)
+ (org-element-cache-reset)))
+
+(add-hook 'after-revert-hook #'rul/org-reset-element-cache-after-revert)
+
(use-package org-download
:ensure t
:config
nihil fit ex nihilo