[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/denote-refs fcdab0b13a 1/2: Don't save reference list whil
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/denote-refs fcdab0b13a 1/2: Don't save reference list while auto-saving |
Date: |
Sun, 15 Jan 2023 11:59:03 -0500 (EST) |
branch: elpa/denote-refs
commit fcdab0b13a584d2da4400a363da0a20f0bb92040
Author: Akib Azmain Turja <akib@disroot.org>
Commit: Akib Azmain Turja <akib@disroot.org>
Don't save reference list while auto-saving
* denote-refs.el (denote-refs--before-write-region): New
function.
* denote-refs.el (denote-refs-mode): Don't add functions to
'before-save-hook' and 'after-save-hook'. Add
'denote-refs--before-write-region' to
'write-region-annotate-functions' hook.
---
denote-refs.el | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/denote-refs.el b/denote-refs.el
index f79f11416c..9525b3d763 100644
--- a/denote-refs.el
+++ b/denote-refs.el
@@ -290,6 +290,16 @@ are it's arguments."
#'denote-refs--fix-xref--collect-matches)
(cancel-timer denote-refs--schedule-idle-update-timer))))
+(defun denote-refs--before-write-region (_ _)
+ "Make sure `write-region' doesn't write the reference lists."
+ (let ((buf (get-buffer-create " *denote-refs-tmp-write-region*"))
+ (str (buffer-string)))
+ (set-buffer buf)
+ (let ((inhibit-read-only t))
+ (erase-buffer))
+ (insert str)
+ (denote-refs--remove)))
+
;;;###autoload
(define-minor-mode denote-refs-mode
"Toggle showing links and backlinks in Denote notes."
@@ -299,8 +309,8 @@ are it's arguments."
(progn
(mapc #'make-local-variable locals)
(denote-refs--show)
- (add-hook 'before-save-hook #'denote-refs--remove nil t)
- (add-hook 'after-save-hook #'denote-refs--show nil t)
+ (add-hook 'write-region-annotate-functions
+ #'denote-refs--before-write-region nil t)
(add-hook 'org-capture-prepare-finalize-hook
#'denote-refs--remove nil t)
;; This runs just once, so we don't bother to keep track of