[PATCH v6 0/8] Add refresh all buffers functionality
Mark Walters
markwalters1009 at gmail.com
Sat Oct 15 00:32:38 PDT 2016
Version 5 of this set is at
id:1476045223-5238-1-git-send-email-markwalters1009 at gmail.com
The changes from the previous version fix Tomi's comments (give an
error if the refresh function is non-interactive rather than failing
silently, and making the refresh-all-buffers function interactive).
I also added a global keybinding of M-= for the refresh all buffers
function. I can see this being useful if you are away from your
computer for some time, you just press M-= and all your already open
buffers are not up to date.
We could similarly add M-G for poll and refresh all buffers. Do people
have any thoughts on that? It would be a trivial followup patch.
The interdiff is below (except the added interactive in
notmuch-refresh-all-buffers is missing in the interdiff)
Best wishes
Mark
Ioan-Adrian Ratiu (4):
emacs: notmuch-search: add no-display functionality
emacs: notmuch-search-refresh-view: reuse buffer
emacs: notmuch-show: refresh all windows displaying buffer
emacs: notmuch-lib: add refresh all buffers function
Mark Walters (4):
emacs: tree: make refresh use generic binding
emacs: make the refresh functions more consistent
emacs: hello: stop update from forcing the buffer to be displayed
emacs: add global keybinding M-= for refresh all buffers
emacs/notmuch-hello.el | 7 ++++---
emacs/notmuch-lib.el | 22 ++++++++++++++++++----
emacs/notmuch-show.el | 19 +++++++++++++------
emacs/notmuch-tree.el | 1 -
emacs/notmuch.el | 16 +++++++++++-----
5 files changed, 46 insertions(+), 19 deletions(-)
diff --git a/emacs/notmuch-lib.el b/emacs/notmuch-lib.el
index 388abdb..1f0d167 100644
--- a/emacs/notmuch-lib.el
+++ b/emacs/notmuch-lib.el
@@ -151,6 +151,7 @@ For example, if you wanted to remove an \"inbox\" tag and add an
(define-key map "z" 'notmuch-tree)
(define-key map "m" 'notmuch-mua-new-mail)
(define-key map "=" 'notmuch-refresh-this-buffer)
+ (define-key map (kbd "M-=") 'notmuch-refresh-all-buffers)
(define-key map "G" 'notmuch-poll-and-refresh-this-buffer)
(define-key map "j" 'notmuch-jump-search)
map)
@@ -410,21 +411,15 @@ of its command symbol."
(pop-to-buffer (help-buffer)))))
(defvar notmuch-buffer-refresh-function nil
- "Function to call to refresh the current buffer.
-
-The function should be interactive.")
+ "Function to call to refresh the current buffer.")
(make-variable-buffer-local 'notmuch-buffer-refresh-function)
(defun notmuch-refresh-this-buffer ()
"Refresh the current buffer."
(interactive)
(when notmuch-buffer-refresh-function
- (if (and (commandp notmuch-buffer-refresh-function)
- (functionp notmuch-buffer-refresh-function))
- ;; Pass prefix argument, etc.
- (call-interactively notmuch-buffer-refresh-function)
- (error "%s is not an interactive function"
- notmuch-buffer-refresh-function))))
+ ;; Pass prefix argument, etc.
+ (call-interactively notmuch-buffer-refresh-function)))
(defun notmuch-poll-and-refresh-this-buffer ()
"Invoke `notmuch-poll' to import mail, then refresh the current buffer."
More information about the notmuch
mailing list