Re: Repeat last tagging

Subject: Re: Repeat last tagging

Date: Wed, 14 Jul 2021 12:25:30 +0300

To: inwit,


From: Tomi Ollila

On Wed, Jul 14 2021, wrote:

> Hi,
> While using notmuch in emacs (which I love, thank you so much!!) I was
> wondering if there's a way to repeat the last tagging operation for a
> different message or thread.
> My usecase is that, in tree-mode, sometimes I need to tag several emails
> from different threads, and it would come very handy if, after the first
> tag change, I could use a shortcut (I'd choose '.', as in vim/evil)
> which would apply the same tag change to other emails. Does this make
> sense?

It does, what it would require is saving last-tag-change to a variable
and then bind function to a key... 
I personally am not too interested for such a binding (It could be
"dangerous" to do accidental undesired change (but I also could be
wrong and like such a feature >;D)

for reference I have the following bindings added to my configuration file

(define-key notmuch-show-user-map "u"
  (lambda () "mark message unread" (interactive)
    (notmuch-show-tag-message "+unread")))

(define-key notmuch-show-user-map "i"
  (lambda () "remove inbox tag" (interactive)
    (notmuch-show-tag-message "-inbox")))

which means uu restores "unread" and ui removes "inbox".

one can bind to notmuch-show-mode-map in order for just one keypress
to do tag-change... storing last-tag-change may provide hard if there
is no central place to execute "notmuch tag" command in notmuch emacs
source code...

> I know I could perform a search for all the emails that I need
> to tag and tag them all at the same time, but the criteria to select
> them is usually not obvious. Another option would be to be able to mark
> emails, then tag them (I've seen the emacs-region thing, but it's not
> the same).
> Thanks in advance. And cheers again for the good work!
> Regards,
> _______________________________________________
> notmuch mailing list --
> To unsubscribe send an email to
notmuch mailing list --
To unsubscribe send an email to