fix(lib): cache errors in doom-docs-mode

This commit is contained in:
Henrik Lissner 2022-01-23 21:08:20 +01:00
parent 7246db457c
commit 1daecbe59c

View file

@ -87,6 +87,7 @@
(cl-pushnew beg doom--docs-babel-cache) (cl-pushnew beg doom--docs-babel-cache)
(quiet! (org-babel-execute-src-block)) (quiet! (org-babel-execute-src-block))
(setq results (org-babel-where-is-src-block-result)) (setq results (org-babel-where-is-src-block-result))
(org-element-cache-refresh beg)
(restore-buffer-modified-p nil))) (restore-buffer-modified-p nil)))
(save-excursion (save-excursion
(when results (when results
@ -103,7 +104,8 @@
(dolist (pos doom--docs-babel-cache) (dolist (pos doom--docs-babel-cache)
(goto-char pos) (goto-char pos)
(org-babel-remove-result) (org-babel-remove-result)
(restore-buffer-modified-p nil))))))) (org-element-cache-refresh pos))
(restore-buffer-modified-p nil))))))
(defvar doom--docs-macro-cache nil) (defvar doom--docs-macro-cache nil)
(defun doom--docs-expand-macros-h () (defun doom--docs-expand-macros-h ()
@ -126,7 +128,8 @@
`(display ,value)))) `(display ,value))))
(remove-text-properties (match-beginning 0) (remove-text-properties (match-beginning 0)
(match-end 0) (match-end 0)
'(display))))))) '(display))))
(org-element-cache-refresh (point)))))
(defvar doom--docs-kbd-alist (defvar doom--docs-kbd-alist
(let ((evilp (featurep! :editor evil))) (let ((evilp (featurep! :editor evil)))
@ -147,7 +150,8 @@
,(let ((kbd (match-string-no-properties 1))) ,(let ((kbd (match-string-no-properties 1)))
(dolist (rep doom--docs-kbd-alist kbd) (dolist (rep doom--docs-kbd-alist kbd)
(setq kbd (replace-regexp-in-string (car rep) (cdr rep) kbd)))))) (setq kbd (replace-regexp-in-string (car rep) (cdr rep) kbd))))))
(remove-text-properties beg end '(display))))) (remove-text-properties beg end '(display)))
(org-element-cache-refresh beg)))
(restore-buffer-modified-p nil)))) (restore-buffer-modified-p nil))))
(defun doom--docs-realign-tables-h () (defun doom--docs-realign-tables-h ()
@ -157,6 +161,7 @@
(while (re-search-forward org-table-line-regexp nil t) (while (re-search-forward org-table-line-regexp nil t)
(let ((inhibit-read-only t)) (let ((inhibit-read-only t))
(org-table-align))) (org-table-align)))
(org-element-cache-refresh (point))
(restore-buffer-modified-p nil))) (restore-buffer-modified-p nil)))
(defvar doom-docs-mode-alist (defvar doom-docs-mode-alist