From 0ce9c53fd4c012d8a67937aa1ad60519f7f45987 Mon Sep 17 00:00:00 2001 From: Jed Brown Date: Thu, 26 Nov 2009 22:36:50 +0100 Subject: [PATCH] notmuch-search-add/remove-tag: restrict to messages in current query Rather than tagging the everything in the thread. This is arguably more desirable behavior and is consistent with clearly desirably behavior of notmuch-search-operate-all. Note that this change applies indirectly to notmuch-search-archive-thread (which is actually equivalent behavior since this function is primarily used when browsing an inbox). Signed-off-by: Jed Brown --- notmuch.el | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/notmuch.el b/notmuch.el index 6adac9e6..e9786c0b 100644 --- a/notmuch.el +++ b/notmuch.el @@ -935,15 +935,19 @@ and will also appear in a buffer named \"*Notmuch errors*\"." (split-string (buffer-substring beg end)))))) (defun notmuch-search-add-tag (tag) + "Add a tag to messages in the current thread matching the +active query." (interactive (list (notmuch-select-tag-with-completion "Tag to add: "))) - (notmuch-call-notmuch-process "tag" (concat "+" tag) (notmuch-search-find-thread-id)) + (notmuch-call-notmuch-process "tag" (concat "+" tag) (notmuch-search-find-thread-id) " and " notmuch-search-query-string) (notmuch-search-set-tags (delete-dups (sort (cons tag (notmuch-search-get-tags)) 'string<)))) (defun notmuch-search-remove-tag (tag) + "Remove a tag from messages in the current thread matching the +active query." (interactive (list (notmuch-select-tag-with-completion "Tag to remove: " (notmuch-search-find-thread-id)))) - (notmuch-call-notmuch-process "tag" (concat "-" tag) (notmuch-search-find-thread-id)) + (notmuch-call-notmuch-process "tag" (concat "-" tag) (notmuch-search-find-thread-id) " and " notmuch-search-query-string) (notmuch-search-set-tags (delete tag (notmuch-search-get-tags)))) (defun notmuch-search-archive-thread ()