Problem: You want to delete certain emails once and for all, not have them find their way back into Apple Mail at some future time.
This problem applies to email accounts that use IMAP rather than POP. Where POP is designed to store email on a local drive, IMAP is designed to do the opposite. So with an IMAP account, you can spend an hour (or several weekends) deleting spam within Apple mail, then at some future time find that all your hard work has been for nothing: the spam has been re-fetched from the server and lives once again in your local email database.
It’s happened to me several times. One definite way to induce this pain is to tell Apple mail to rebuild it’s database. In my case this led to eight hours of Apple Mail downloading messages from the server (more than 400,000 of them) that I already had in my local mail database. If I had spent any time deleting spam at any time in the previous years (however long I’ve been using IMAP), all that spam would have reappeared.
My ISP told me they provide no way to delete mail from the IMAP server directly. The best they could offer was to have me use email and delete the emails a few at a time.
I found a better way to do it, using Apple Mail itself. There are three steps/
Step 1: Here we’re editing one of my IMAP email accounts. The only important detail is that I’ve set the “Trash Mailbox” to be the trashcan folder within Apple Mail. The setting for “Erase deleted messages: When quitting Mail” ought to work, but doesn’t work reliably.
Step 2: Select some emails in that account you want to kill and delete them. There are at least two ways to do this:
A. Hit CMD-DELETE
B. Right click and choose “Delete”
Step 3: Right click on the the Trashcan folder in Mail (either the top-level trashcan, or the trashcan for that account) and choose “Erase Deleted Items”