On Saturday, 2019-12-28 at 10:01:22 -05, William Casarin wrote: > This is the notmuch-tree version of > notmuch-show-archive-message-than-next-or-exit. > > Signed-off-by: William Casarin <jb55@jb55.com> Reviewed-by: David Edmondson <dme@dme.org> > --- > emacs/notmuch-tree.el | 30 ++++++++++++++++++++---------- > 1 file changed, 20 insertions(+), 10 deletions(-) > > diff --git a/emacs/notmuch-tree.el b/emacs/notmuch-tree.el > index f66219c5..cdf68ed4 100644 > --- a/emacs/notmuch-tree.el > +++ b/emacs/notmuch-tree.el > @@ -563,6 +563,15 @@ message will be \"unarchived\", i.e. the tag changes in > (notmuch-tree-archive-message unarchive) > (notmuch-tree-next-matching-message)) > > +(defun notmuch-tree-archive-message-then-next-or-exit () > + "Archive current message, then show next open message in current thread. > + > +If at the last open message in the current thread, then exit back > +to search results." > + (interactive) > + (notmuch-tree-archive-message) > + (notmuch-tree-next-matching-message t)) > + > (defun notmuch-tree-next-message () > "Move to next message." > (interactive) > @@ -589,23 +598,24 @@ nil otherwise." > (forward-line dir)) > (not (funcall eobfn)))) > > -(defun notmuch-tree-matching-message (&optional prev) > +(defun notmuch-tree-matching-message (&optional prev pop-at-end) > "Move to the next or previous matching message" > (interactive "P") > (forward-line (if prev -1 nil)) > - (notmuch-tree-goto-matching-message prev) > - (when (window-live-p notmuch-tree-message-window) > - (notmuch-tree-show-message-in))) > + (if (and (not (notmuch-tree-goto-matching-message prev)) pop-at-end) > + (notmuch-tree-quit pop-at-end) > + (when (window-live-p notmuch-tree-message-window) > + (notmuch-tree-show-message-in)))) > > -(defun notmuch-tree-prev-matching-message () > +(defun notmuch-tree-prev-matching-message (&optional pop-at-end) > "Move to previous matching message." > - (interactive) > - (notmuch-tree-matching-message t)) > + (interactive "P") > + (notmuch-tree-matching-message t pop-at-end)) > > -(defun notmuch-tree-next-matching-message () > +(defun notmuch-tree-next-matching-message (&optional pop-at-end) > "Move to next matching message." > - (interactive) > - (notmuch-tree-matching-message)) > + (interactive "P") > + (notmuch-tree-matching-message nil pop-at-end)) > > (defun notmuch-tree-refresh-view () > "Refresh view." > -- > 2.24.0 > > _______________________________________________ > notmuch mailing list > notmuch@notmuchmail.org > https://notmuchmail.org/mailman/listinfo/notmuch dme. -- I know a man called Sylvester, him have to wear a bullet proof vest y'all. _______________________________________________ notmuch mailing list notmuch@notmuchmail.org https://notmuchmail.org/mailman/listinfo/notmuch