Terminal Email

alot vs Notmuch Emacs interface

alot: Terminal mail reader written in Python that works on a local notmuch database, with tag-based search and threads.
Notmuch Emacs interface: Emacs front end for notmuch that reads, searches, tags and composes mail from a local Maildir.

Differences

Side by side

alotNotmuch Emacs interface
InterfaceFull-screen terminal interfaceRuns inside Emacs
LanguagePythonEmacs Lisp
LicenseGPL 3.0 or laterGPL 3.0 or later
Latest version0.120.40
LinuxNativeNative
macOSNativeNative
WindowsThrough WSLThrough WSL
BSDNativeNative
AndroidNoThrough Termux
IMAPThrough a separate toolThrough a separate tool
POP3Through a separate toolThrough a separate tool
SMTPThrough a separate toolYes
JMAPNoNo
MaildirYesYes
mboxNoNo
notmuchYesYes
OpenPGPYesYes
S/MIMENoYes
OAuth2 sign-inNovia script
ThreadsYesYes
Searchnotmuch queriesnotmuch Xapian full-text search with tags
HTML mailvia mailcap, e.g. w3m -dumpbuilt-in, rendered with the Emacs shr library
MouseYesYes
Multiple accountsYesYes
Offline usealways; reads a local notmuch databasefull; reads a local Maildir synced by mbsync or OfflineIMAP
CalendarNoshows text/calendar parts; no invitation replies
Contactsvia an external lookup command such as abook, khard or notmuch addressaddress completion from the notmuch index
Vim-style keysYesNo
ConfigurationINI-style config file plus optional Python hooksEmacs Lisp in init.el plus the notmuch config file

Which to choose

Choose alot for

  • Tag-based searches through notmuch instead of folders
  • Full PGP/MIME signing and encryption
  • Python hooks for custom behavior and formatting

Watch out for

  • Needs separate tools to fetch mail (mbsync) and send it (msmtp)
  • No direct IMAP, POP3 or SMTP support
  • No S/MIME support

Install alot

Choose Notmuch Emacs interface for

  • Tag-based organization with fast full-text search over all local mail.
  • Shows a whole thread in a single buffer.
  • Handles PGP/MIME and S/MIME signatures and decryption through notmuch.

Watch out for

  • No built-in IMAP; needs mbsync or a similar sync tool.
  • Custom tags stay in the local index; only standard flags such as unread and replied reach the IMAP server.
  • Requires Emacs and some Emacs Lisp to configure.

Install Notmuch Emacs interface

Questions

What is the difference between alot and Notmuch Emacs interface?

alot is a full-screen terminal client; Notmuch Emacs interface is a mail client that runs inside Emacs. Only Notmuch Emacs interface has built-in SMTP. On Android, alot is not available and Notmuch Emacs interface runs through Termux.

Which runs on Windows, alot or Notmuch Emacs interface?

On Windows, alot runs through WSL. On Windows, Notmuch Emacs interface runs through WSL.

See also: alot alternatives, Notmuch Emacs interface alternatives.