Aerc (mail client)
Main website: aerc: a pretty good email client (aerc-mail.org)
UPDATE 2026: I’m using this as my main email client now. I wrote a bit about it in How I got through my inbox in only two months.
I’ve just started learning Aerc, but my initial impressions are extremely favorable. So far, this is one of the most polished and well-designed TUI programs I’ve seen. I was reading mail in just minutes after installing!
Three weeks later: I’m still doing anything complicated in Claws-Mail or Thunderbird (especially related to attachments). But I’ve started reading and responding to most email messages with Aerc.
If anything, I’m even more impressed with it as I use it.
Here’s the stuff I’ve learned so far. Like vi/Vim, the keyboard shortcuts are case-sensitive:
-
Type
?(Shift+/) to view a cheatsheet of keyboard options. -
Move up and down the message list box with
jandk. -
Move up and down the IMAP folder list with
JandK. -
Hit
Enterto view a selected message. -
Hit
qto exit out of a message or Aerc itself. -
Delete a message with
D(ordandEnterat the prompt). -
Reply (with quoted text) with
R q(R then q, not at the same time). -
Switch "tabs"
Ctrl+n(works even while in Vim, which took me by surprise one day).
I love that keybinding is so each to change. I pretty much always want to do
reply-all, quoted for 99% of the emailing I do. So I re-bound that to just r
in both the message list and view modes in .config/aerc/binds.conf. So this
line shows up in two places and I commented out the other reply types:
r = :reply -aq<Enter>
(I also changed the 'A' binding to :archive year, keep reading.)
Setting up IMAP message archiving
Now I want to get Aerc to archive email in the
Archives/<year> format that Thunderbird used.
The first part is to change the default folder name from Archive to
Archives. That’s done in accounts.conf:
$ cat ~/.config/aerc/accounts.conf [Ratf] source = <redacted> outgoing = <redacted> default = INBOX from = <redacted> copy-to = Sent archive = Archives
The second is to make the year style the default for key binding:
$ cat archive ~/.config/aerc/binds.conf ... [messages] A = :archive year<Enter> ... [view] A = :archive year<Enter>
The other thing I needed was to recompile Aerc from the current master instead of from the latest release. The CHANGELOG.md shows:
* IMAP now uses the delimiter advertised by the server ... * :archive now works on servers using a different delimiter
That work was done just three months ago. I love to see the active support from multiple committers as Aerc closes in on sweet perfection!
(I believe my mail provider (runbox.com) uses a '.' delimiter rather than '/'.)
Conclusion
I’m still just an Aerc noob and sometimes I switch over to claws-mail or Thunderbird to do more complicated things (like deal with file attachments).
I’ll come back here and update this page once I’ve got some more usage under by belt.
See also: Installing Aerc (on Slackware)
Also mentioned in Multiple Tools