Off topic: Can anyone recommend a good command-line mail client. I'm used mutt quite a bit. Wondering if there are any more out there that are at least as good as mutt.
I always go back to mutt. It does one thing, read email, and it does it well.
The key is to set it up appropriately. Don't use mutt for downloading your email, especially if you wanna deal with IMAP. Use isync (mbsync) for that purpose (I used to use offlineimap, but it's buggy and not very fast).
There's also notmuch, which I use for indexing my email. It also contains a pretty good email reader.
My favourite bug was when it was blocking on wanting a password, but wasn't accepting input. I had to kill it externally because it wasn't accepting C-\ or C-c.
Same here, but, if you use it with Gmail, let me recommend Abdó Roig-Maranges' fork of offlineimap, which implements labels[1][2]! That way you can sync only [Gmail].All Mail and all the other info (such as /Inbox, /Sent and any other custom labels) come as X-Keywords in the header (no duplicates, and no lost metadata)[3]. And mu4e supports all this[4]!
[3] [Gmail].Trash and [Gmail].Drafts are also real folders, not just labels. You should sync them too. [Gmail].Sent Mail is just a saved search for /Sent labels. mu4e asks for a "sent" folder but, since you should (setq mu4e-sent-messages-behavior 'delete) anyway with Gmail, it becomes a dummy folder locally, and all is well.
I've bookmarked your comment. I'm gonna be forced to move back to commandline when gmail finally foists the new compose on me (fuckers[1]).
[1] Some of us want to, you know, use email for longer messages than a tweet. It's hard to do that when PgUp/PgDn are so janky. And don't even get me started on S-PgUp and S-PgDn.
I like notmuch with the Emacs notmuch client, because it'll work fine when I only have a terminal available, but when I run Emacs+X11, it'll also display images inline and has some decent mouse support.