X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=emacs%2Fnotmuch-show.el;h=86130cec978d8069b9b900460976d3327d653a4f;hb=2f40ca28a4d63df941525801735d05b5b2b86f91;hp=e701aec39ccbec8fc8afdf661d2a47443cad1a75;hpb=d5dcfc714e13256cb2084b30d3506a4abc990a51;p=notmuch diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index e701aec3..86130cec 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -184,8 +184,15 @@ provided with an MLA argument nor `completing-read' input." :group 'notmuch-show) (defcustom notmuch-show-mark-read-tags '("-unread") - "List of tags to apply when message is read, ie. shown in notmuch-show -buffer." + "List of tag changes to apply to a message when it is marked as read. + +Tags starting with \"+\" (or not starting with either \"+\" or +\"-\") in the list will be added, and tags starting with \"-\" +will be removed from the message being marked as read. + +For example, if you wanted to remove an \"unread\" tag and add a +\"read\" tag (which would make little sense), you would set: + (\"-unread\" \"+read\")" :type '(repeat string) :group 'notmuch-show) @@ -1070,10 +1077,10 @@ function is used." (jit-lock-register #'notmuch-show-buttonise-links) - (run-hooks 'notmuch-show-hook)) + ;; Set the header line to the subject of the first message. + (setq header-line-format (notmuch-show-strip-re (notmuch-show-get-subject))) - ;; Set the header line to the subject of the first message. - (setq header-line-format (notmuch-show-strip-re (notmuch-show-get-subject))))) + (run-hooks 'notmuch-show-hook)))) (defun notmuch-show-capture-state () "Capture the state of the current buffer. @@ -1390,10 +1397,18 @@ current thread." "Are the headers of the current message visible?" (notmuch-show-get-prop :headers-visible)) -(defun notmuch-show-mark-read () - "Apply `notmuch-show-mark-read-tags' to the message." +(defun notmuch-show-mark-read (&optional unread) + "Mark the current message as read. + +Mark the current message as read by applying the tag changes in +`notmuch-show-mark-read-tags' to it (remove the \"unread\" tag by +default). If a prefix argument is given, the message will be +marked as unread, i.e. the tag changes in +`notmuch-show-mark-read-tags' will be reversed." + (interactive "P") (when notmuch-show-mark-read-tags - (apply 'notmuch-show-tag-message notmuch-show-mark-read-tags))) + (apply 'notmuch-show-tag-message + (notmuch-tag-change-list notmuch-show-mark-read-tags unread)))) ;; Functions for getting attributes of several messages in the current ;; thread.