I use mutt and I like to sort out some emails from various mailing lists. I still like them to come to my inbox, but when read, I want to move them somehow automatically.

Currently, I do the following:

  • Select the mails matching a pattern, e.g.: T~f facebook.com
  • Move them to some place: ;s=Facebook

I made some macros to avoid typing it by myself. However I still need to do the two separate steps. And considering that I have a few different mailing lists (say, LinkedIn as well), that's two steps for each list.

I would like to reduce it in a single step, that is to say one command (macro) to select a few messages based on the pattern and move them.

The problem is that ;s does not check if some mails are already tagged. So that if none are tagged, it will move the current mail. How could I add some condition to ;s to do nothing if no tag is set?


I'm not a mutt user, but it looks like tag-prefix-cond can do this. It is like tag-prefix but if there aren't any tagged messages, the command buffer is flushed without doing anything (in other words, whatever hook you're in stops dead in its tracks), from this mutt-users@mutt.org archive.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.