diff options
| author | Stéphane Marks <shipmints@gmail.com> | 2026-03-01 12:56:04 -0500 |
|---|---|---|
| committer | Flo Rommel <mail@florommel.de> | 2026-03-14 01:11:04 +0100 |
| commit | b2b9bd9f59d267d223ec2b1a52d00803361b863f (patch) | |
| tree | c5461a9d4a94eb0d25a6d144936434e0d1b02e6d | |
| parent | a4971b52232ff622f768fcd569c3ae5929580f3f (diff) | |
Support Emacs 31 'bookmark-after-load-file-hook'
Warn when an active bufferlo bookmark is not present in a
refreshed bookmark list.
* bufferlo.el (bufferlo-mode): Add/remove hook.
(bufferlo--bookmark-after-load-file-hook): Hook implementation.
| -rw-r--r-- | bufferlo.el | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/bufferlo.el b/bufferlo.el index d9ad3fa..3f52e8d 100644 --- a/bufferlo.el +++ b/bufferlo.el @@ -1124,7 +1124,9 @@ string, FACE is the face for STR." #'bufferlo-bookmark--tab-save-on-close) (add-hook 'delete-frame-functions #'bufferlo-bookmark--frame-save-on-delete) - ;; bookmark advice + ;; bookmark hook and advice + (add-hook 'bookmark-after-load-file-hook + #'bufferlo--bookmark-after-load-file-hook) (advice-add #'bookmark--jump-via :around #'bufferlo--bookmark--jump-via-advice) (advice-add #'bookmark-rename :around #'bufferlo--bookmark-rename-advice) (advice-add #'bookmark-delete :around #'bufferlo--bookmark-delete-advice) @@ -1174,7 +1176,9 @@ string, FACE is the face for STR." #'bufferlo-bookmark--tab-save-on-close) (remove-hook 'delete-frame-functions #'bufferlo-bookmark--frame-save-on-delete) - ;; bookmark advice + ;; bookmark hook and advice + (remove-hook 'bookmark-after-load-file-hook + #'bufferlo--bookmark-after-load-file-hook) (advice-remove #'bookmark--jump-via #'bufferlo--bookmark--jump-via-advice) (advice-remove #'bookmark-rename #'bufferlo--bookmark-rename-advice) (advice-remove #'bookmark-delete #'bufferlo--bookmark-delete-advice))) @@ -5028,7 +5032,15 @@ exist." (bufferlo-tab-close-kill-buffers) (message "No active bufferlo frame or tab bookmark to close.")))) -;;; bookmark advisories +;;; bookmark hook and advice + +(defun bufferlo--bookmark-after-load-file-hook () + "Scan the loaded bookmarks list for missing active bufferlo bookmarks." + (let ((alist-bookmarks (bufferlo--bookmark-get-names))) + (dolist (bookmark (bufferlo--active-bookmarks)) + (unless (member (car bookmark) alist-bookmarks) + (warn "Active bufferlo bookmark `%s' not present in loaded bookmarks" + (car bookmark)))))) ;; (defun bookmark-set (&optional name no-overwrite) ;; (defun bookmark-set-no-overwrite (&optional name push-bookmark) |
