Hi all! I'm trying to configure some email filters to manage spam and am coming up short on some specific features (I suspect there may be extensions that will facilitate this to some degree, and I've seen a few mentioned but am hoping that someone will be able to point me to a specific solution either within the regular settings or a specific extension that will do what I'm looking for)
So, some background - I use Thunderbird to manage a few email accounts (mostly Gmail) via POP3. I have my gmail account settings set to never send anything to spam (i.e. deliver everything to TB) and then filter locally to avoid having to go log in to webmail to regularly check for spam. For a long while I just manually sorted it all in the inbox (aside from a few things that I filtered to other folders for dealing with later) but as spam has gotten worse for some accounts over time, I find myself wanting the client to do some preliminary sorting that I can go through manually later.
I've never had the best luck with the built-in spam filters in terms of false positives and negatives so I've created manual lists of sender email addresses and filtered words that mark the emails as spam and move them to spam or delete them, but even this method unfortunately ends up catching a lot of legit emails and because it's custom word filters rather than the heuristic - based spam filters, it keeps catching legit emails in the net even when I've added specific senders to the address book (which, in addition to the "do not automatically mark mail as junk if the sender is in <address book>" setting in accounts, is apparently the method used for whitelisting.
My "Mark as spam" filters essentially take the form "If: Subject contains any of the following: <filtered word> (with a bunch of separate "Match any of the following" lines with one word each per entry), Then: Tag as Spam, Mark as Spam, Move to Spam folder") (and for emails the same thing, replacing <filtered word> with <if the sender is X email address>)
I've tried creating "Not Spam" filters along the lines of "IF: Sender is in address book THEN: Tag as Not Spam", but then when using word and email address spam filters I cannot set the "IS Spam" filters to look something like a bunch of "match any" "IF subject contains <Filtered word>", but also a "MUST also match" (match all): Tag is NOT "Not spam" (or "If sender is NOT in address book") because the "Match this" field only allows either ANY of or ALL of for any one given filter, and I can't figure out a way to first match any email from an address in my address book (and mark it as not spam), and then process any remaining email through the "Check for filtered words and email addresses" filters.
I hope this makes some kind of sense - I realise that I may just be asking for the impossible, or equally well that there's something really obvious that I'm just not seeing, and I'm having trouble searching for other people trying to do this specific thing, so any tips, extension recommendations or even just a "yeah you can't do that" is appreciated as I've been pulling my hair out trying to get filters in the correct order and trying to creatively work around the limitations of the built in features but I can't brain what I'm trying to do, hah.
I've attached a couple of screenshots showing the structure of my "mark as spam" and "mark as not spam"* filters so you can hopefully see what I'm going for. Any tips super appreciated! <3
(* The reason for the two different "mark as not spam" filters is that one of them was trying to match emails that had already been processed by the other filters and marked as spam with the intent to check them against my address book and *remove* them from spam, whereas the other one is trying to catch emails as soon as they come in and flag ones that are in my address book as *not* spam so that future spam filters can ignore them but yeah - issues as above.)