Google's been rolling out IMAP access for Gmail accounts. This is a great thing, especially for mobile users - but it leads to an interesting problem for hardcore email users.
The easiest action to take on a message in practically any email client is to delete the message. You tap the delete key, and the message disappears, and life moves on. For most IMAP configurations, this moves the message to a folder called "Trash" so that you can recover a message you didn't mean to trash.
Gmail, like so many other Google products, tried to change how we think about email storage. Google wants you to archive your mail, not delete it - in fact, Google didn't add a "delete" button until January of 2006, nearly two years after the first availability of the service.
So, the problem: how do we make it just as easy to archive email coming off Gmail accounts as it is to trash regular email?
I have a solution. One that requires minimal technology hacking and only slightly more brain bending.
Most IMAP clients let you explicitly set which folders you want to use for each of the major mail storage buckets: sent messages, junk messages, drafts, and deleted messages.
Gmail, when accessed through IMAP, not only gives you all your folders as labels, but also gives you a set of similar folders:

So the trick here is to remap your deleted messages folder from "Trash" to "[Gmail]/All Mail". This way, when you hit the delete button, you'll actually be sending it into All Mail - effectively the same thing you do when you press "Archive" in the Gmail web interface.
Of course, each email client is a little different in how you configure this. Let me cover the important ones:
In Mail.app, you do this by selecting the "All Mail" folder, and then through the Mailbox menu, select "Use This Mailbox For -> Trash".

(Note that when you set a special folder on Mail.app, it disappears from the main IMAP folder list and becomes the appropriate special folder, with the appropriate special icon. So if you want to find your "All Mail" folder, click on the Trash.)
On the iPhone, you can do this by going to Settings > Mail > (your gmail account) > Advanced > Deleted Mailbox, and selecting the "All Mail" folder.

Thunderbird is considerably more complicated, and thus it gets the dubious honor of being the only client to get a list of steps:
- Go to Preferences > Advanced > Config Editor.
- Type mail.server into the filter field.
- Find which server entry corresponds to your Gmail account. All the config related to that account will have a name of mail.server.server#.something. Make a note of that number.
- Right click on the preference list, and select "New String".
- Replacing the number from above in the appropriate place, type mail.server.server#.trash_folder_name as the name.
- For the value, type "[Gmail]/All Mail".
This should end up looking like this:

(I have not actually tested this, but in theory it should work. Let me know if it doesn't. Also, if you're in Thunderbird, it might just be easier to install Nostalgy and write an appropriate rule.)
If you're using another mail client, look at the functions for how to remap which folders it uses to store deleted messages.
Of course, the important thing to wrap your head around is that when you hit delete, you really aren't deleting messages anymore. What if you really want to delete a message? Simply drag a message to the [Gmail]/Trash folder. It's an interesting flip: normally it takes less energy to delete than file; now it takes more energy to file than delete.
Of course, this isn't really limited to Gmail either. If you like having a giant Archive folder because you're some sort of clean inbox nut, you can do a similar flip of behavior - just make the folder you want and remap your client to "delete" to it.



