On Sun, 12 Aug 2012 21:33:39 +0100, Patrick Totzke <patricktotzke@gmail.com> wrote: > Quoting David Froger (2012-08-12 16:53:43) > > > > 3. Would it be possible to have the feature 'kill a thread' like Sup have? (see > > > > http://sup.rubyforge.org/README.txt). > > > > > > I haven't needed such a feature so I don't have a clear idea how it > > > should work. There are some patches/ideas about muting threads using > > > notmuch generally around here. I guess the simplest thing to do is hide > > > a thread if it has a certain tag, e.g. "muted" as suggested by notmuch > > > TODO file, unless you search for it explicitly. > > I like this solution, I will use it (adding 'and not tag:mutted' at the end of my search). > > When I'm not interessed with a long discussion on a mailling list, I like to be able to 'kill' > > the thread so it does not reappear with every new mail. > > I'm not sure if this actually solves your problem, because > notmuch's search is message, not thread based: > If you search for threads that match "is:inbox and not is:muted", you will see threads > that contain messages which are tagged with "inbox" and not with "muted". > This means if you just tag one (or all) msg in a thread "muted" and there is a new response, > this thread will contain such a matching message again and show up in your result list. Thanks for the clarification, it's very helpfull! > > To make this work, you need to set up your tagging script (that you run after 'notmuch new') > so that it updates those new messages accordingly. If a msg belongs to a thread that has > muted messages, also tag the new one muted. > I can pretty much recommend Justus' tagging script afew: https://github.com/teythoon/afew > One of the filters that it supports out of the box is exactly the "kill threads" function > you want. Thanks, this script looks very cool and I think I will replace mine with it (I should have visited (http://notmuchmail.org/initial_tagging/ ...). You're right, the filter I'm interessed is in in aftew/filters/KillThreadsFilter.py, and do this: for all email M that does not have tag 'killed': I = thread Id of the email M if there are emails that have thread id I and the 'killed' tag: apply 'killed' tag on email E Thanks again for all the help.