summaryrefslogtreecommitdiff
path: root/modules/org-config.el
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-03-16 12:27:42 -0500
committerCraig Jennings <c@cjennings.net>2026-03-16 12:27:42 -0500
commit0d55edecf82b32b75780f24751dfa8d693b72708 (patch)
treea0a7b2a58ffa1e5be1df4f052b6bff5d4ef187a1 /modules/org-config.el
parent7941618b74a14df29c48304a4162fce59d4499ec (diff)
fix(slack): disable emojify in lui buffers, add org cache reset commandHEADmain
Disable slack-buffer-emojify to prevent wrong-type-argument listp errors on emoji characters during lui-scroll-post-command recenter. Add C-; O c to reset org-element cache across all org-mode buffers.
Diffstat (limited to 'modules/org-config.el')
-rw-r--r--modules/org-config.el22
1 files changed, 22 insertions, 0 deletions
diff --git a/modules/org-config.el b/modules/org-config.el
index f1e90973..125e2571 100644
--- a/modules/org-config.el
+++ b/modules/org-config.el
@@ -314,6 +314,28 @@ status to preserve priority ordering within TODO groups."
(user-error nil)))
(message "Sorted entries by TODO status and priority"))
+;; ----------------------- Org Element Cache Reset -----------------------------
+
+(defun cj/org-element-cache-reset-all ()
+ "Reset the org-element cache in all org-mode buffers."
+ (interactive)
+ (let ((count 0))
+ (dolist (buf (buffer-list))
+ (with-current-buffer buf
+ (when (derived-mode-p 'org-mode)
+ (org-element-cache-reset)
+ (cl-incf count))))
+ (message "Reset org-element cache in %d buffer%s" count (if (= count 1) "" "s"))))
+
+;; ------------------------------ Org Keybindings ------------------------------
+
+(defvar cj/org-keymap (make-sparse-keymap)
+ "Keymap for org commands under C-; O.")
+
+(global-set-key (kbd "C-; O") cj/org-keymap)
+
+(define-key cj/org-keymap (kbd "c") #'cj/org-element-cache-reset-all)
+
;; which-key labels for org keymaps
(with-eval-after-load 'which-key
(which-key-add-key-based-replacements