+++
title = "Email in Emacs Redux"
author = ["Colin"]
date = 2019-12-04T11:33:00-05:00
tags = ["tools", "email", "notmuch"]
categories = ["emacs"]
draft = false
+++

I have moved to reading and responding to all my email in Emacs. I honestly
didn't think I would ever be able to make this jump because of silly things like
signatures, HTML email and my address book. But the reality of how I actually
use email on a day to day basis is a big part of why this was possible.

As it happens, most of my email work is replying to other people. As an engineer
on a product team I start very few email threads, and even fewer with people
outside the organization. Thus, the lack of the company standard HTML signature
in my outgoing emails is rarely a problem. On the once or twice a month
occurrence of needing to send an external-facing email, I can pop open Gmail in
a browser and take care of it.

But for quickly replying to folks, parsing tasks into my daypage (more on this
later) and saving content to read later, Notmuch has been a dream.

So the cat's out of the bag. As in my last post about email in Emacs, I use
Notmuch along with mbsync for getting email and msmtp to send email. I also host
my own email server on a Digital Ocean VPS running mailinabox&nbsp;[^fn:1]. This makes
the configuration with mbsync and msmtp pretty painless.

The other important discovery I made is muchsync&nbsp;[^fn:2]. This allows me to run
the mbsync task for looking for new email on a server in the house that's always
on. Then each other device I want to read and respond to email just runs a
\`muchsync\` task that hits up that server and syncs the state of the notmuch tag
database.

The result is delightful. I can clear out my inbox on one machine and find it
all cleared up on all the others. Combine that with the ability to quickly
respond to email within Emacs, copy links to specific messages and capture them
to Org Mode, and archive things I don't care about, the whole thing is really effective.

One aspect of this is that I have my email setup to default to showing the
plaintext version, with a tab-able HTML view powered by eww. This works
surprisingly well. As usual, my configuration is in my dotfiles, specifically
my \`+mail.el\`&nbsp;[^fn:3] configuration in Doom Emacs.

Check it out and I hope you can get a handle on your email.

[^fn:1]: <https://mailinabox.email>
[^fn:2]: <http://www.muchsync.org>
[^fn:3]: <https://git.unbl.ink/secstate/dotfiles/src/branch/master/emacs/.config/doom/+mail.el>
