Join the AMA (Ask Me Anything) with the Firefox leadership team to celebrate Firefox 20th anniversary and discuss Firefox’s future on Mozilla Connect. Mark your calendar on Thursday, November 14, 18:00 - 20:00 UTC!

This site will have limited functionality while we undergo maintenance to improve your experience. If an article doesn't solve your issue and you want to ask a question, we have our support community waiting to help you at @FirefoxSupport on Twitter and/r/firefox on Reddit.

Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

How can I have complex arrangement of filters?

more options

I would like to separate my incoming mail first those messages where [from] is in any of my address lists.

I would then want to apply a set of filters sorting them into folders with the residual going into a separate folder.

Then I would like to have those messages go through the junk filters and another set of filters with the residual going into a separate folder.

I cannot find how to specify that is message is in ANY of my address list. I work around that by having several filter.

I cannot find how to specify ELSE.

this is what I would like to do.

[From] [Is in my address book folders] [collected addresses] ==> set of filters A [From] [Is in my address book folders] [personal addresses] ==> set of filters A From] [Is in my address book folders] [discussion lists] ==> set of filters A

[From] [Isn’t in my address book folders] [collected addresses] ==> set of filters B [From] [Isn’t in my address book folders] [personal addresses] ==> set of filters B From] [Isn’t in my address book folders] [discussion lists] ==> set of filters B


Set of filters A A1 ==> Family folder A2 ==> Travel offers folder A3 ==> discussion and news folders A3 ==> projects folders A4 ==> Business folders A5 ==> Human rights folder A6 -auto answer on vacation ==> trash A7 out of office ==> trash ... else ==> known sender folder


Set of filters B Junk filters B1 common scams1 ==> trash B2 common scams2 ==>trash ... Else ==> suspicious email folder.

I would like to separate my incoming mail first those messages where [from] is in any of my address lists. I would then want to apply a set of filters sorting them into folders with the residual going into a separate folder. Then I would like to have those messages go through the junk filters and another set of filters with the residual going into a separate folder. I cannot find how to specify that is message is in ANY of my address list. I work around that by having several filter. I cannot find how to specify ELSE. this is what I would like to do. [From] [Is in my address book folders] [collected addresses] ==> set of filters A [From] [Is in my address book folders] [personal addresses] ==> set of filters A From] [Is in my address book folders] [discussion lists] ==> set of filters A [From] [Isn’t in my address book folders] [collected addresses] ==> set of filters B [From] [Isn’t in my address book folders] [personal addresses] ==> set of filters B From] [Isn’t in my address book folders] [discussion lists] ==> set of filters B Set of filters A A1 ==> Family folder A2 ==> Travel offers folder A3 ==> discussion and news folders A3 ==> projects folders A4 ==> Business folders A5 ==> Human rights folder A6 -auto answer on vacation ==> trash A7 out of office ==> trash ... else ==> known sender folder Set of filters B Junk filters B1 common scams1 ==> trash B2 common scams2 ==>trash ... Else ==> suspicious email folder.

Asịsa ahọpụtara

Thank you for your help. I am posting this workaround for your points 2,3, and 4. In case it might help others.

The order of the filters can work as an implicit ELSE since each subsequent filter only works on messages that have not been moved to another folder.

  1. create a stack of filters that meet conditions you can specify and that move messages to specific folders. This can be many filters that are executed in the order in the list.
  2. create a filter with as many lines as necessary to move residual messages that are from senders in your address books. I call this folder "known senders". In my situation that is a filter with 4 conditions joined by OR. (I.,e, that filter is an ANY filter.
  3. create a psuedo-ELSE filter by testing whether the subject in residual messages is a very improbable string like if subject isn't '~@#$%^&*()(*&^%$#@!' move it to a specific folder. I call that folder "suspicious mail"
Gụọ azịza a na nghọta 👍 0

All Replies (5)

more options

You'll have to specify something as filter criteria that's present (or not) in the actual message.

http://kb.mozillazine.org/Filters_%28Thunderbird%29

more options

thank you for replying.

I am going to try ordering my filters this way. I should get to this over the next few days. I'll reply to this thread when I see how my idea works out.

  1. Set of filters A. These move messages to specific folders business, travel offers, friends, etc.
  1. 4 filters that move messages that are in any of my address lists to a folder called "known sender"
  1. Set of filters B. junk mail that did not get caught by the junk filter. Each filter end with 2 actions: mark as junk and delete
  1. a filter that emulates a single ELSE condition check by ending the whole set of filters with a filter that tests whether a subject contains a very unlikely string. E.g., the "Subject" "isn't" "~!@#$%^&*()_+i" move it to a folder named "suspicious".

the order of the sets could also be 1,3,2,4.

more options
  1. filters work in the order you create them.
  2. Filters do not have an else
  3. You can not specify an entire address book for a filter.
  4. You can not call another filter from a filter

This add-on might help you get where you want to go. https://addons.mozilla.org/en-US/thunderbird/addon/filtaquilla/

Instructions http://mesquilla.com/extensions/filtaquilla/

more options

Asịsa Ahọpụtara

Thank you for your help. I am posting this workaround for your points 2,3, and 4. In case it might help others.

The order of the filters can work as an implicit ELSE since each subsequent filter only works on messages that have not been moved to another folder.

  1. create a stack of filters that meet conditions you can specify and that move messages to specific folders. This can be many filters that are executed in the order in the list.
  2. create a filter with as many lines as necessary to move residual messages that are from senders in your address books. I call this folder "known senders". In my situation that is a filter with 4 conditions joined by OR. (I.,e, that filter is an ANY filter.
  3. create a psuedo-ELSE filter by testing whether the subject in residual messages is a very improbable string like if subject isn't '~@#$%^&*()(*&^%$#@!' move it to a specific folder. I call that folder "suspicious mail"
more options

I should have mentioned that I frequently mark messages in the "suspicious" folder as junk. Or I create new filters from messages the "suspicious" or "known sender".