Terminal Email

NeoMutt vs Notmuch Emacs interface

NeoMutt: Full-screen terminal mail reader forked from Mutt, with notmuch, NNTP, Lua scripting and a sidebar built in.
Notmuch Emacs interface: Emacs front end for notmuch that reads, searches, tags and composes mail from a local Maildir.

Differences

Side by side

NeoMuttNotmuch Emacs interface
InterfaceFull-screen terminal interfaceRuns inside Emacs
LanguageCEmacs Lisp
LicenseGPL 2.0 or laterGPL 3.0 or later
Latest version202606160.40
LinuxNativeNative
macOSNativeNative
WindowsThrough WSLThrough WSL
BSDNativeNative
AndroidThrough TermuxThrough Termux
IMAPYesThrough a separate tool
POP3YesThrough a separate tool
SMTPYesYes
JMAPNoNo
MaildirYesYes
mboxYesNo
notmuchYesYes
OpenPGPYesYes
S/MIMEYesYes
OAuth2 sign-invia scriptvia script
ThreadsYesYes
Searchbuilt-in patterns; notmuch for full-textnotmuch Xapian full-text search with tags
HTML mailvia mailcap and an external viewer such as w3m or lynxbuilt-in, rendered with the Emacs shr library
MouseNoYes
Multiple accountsYesYes
Offline usewith isync or OfflineIMAP; IMAP header and body cachefull; reads a local Maildir synced by mbsync or OfflineIMAP
CalendarNoshows text/calendar parts; no invitation replies
Contactsvia query_command with abook or khardaddress completion from the notmuch index
Vim-style keysYesNo
Configurationneomuttrc text fileEmacs Lisp in init.el plus the notmuch config file

Which to choose

Choose NeoMutt for

  • Built-in notmuch support for tag-based virtual mailboxes and full-text search
  • Reads Usenet over NNTP and supports Lua scripting
  • Reads most existing muttrc files with few or no changes

Watch out for

  • Configuration is a text file with hundreds of options and no setup wizard
  • HTML mail needs an external viewer set up in mailcap
  • OAuth2 needs an external token script such as mutt_oauth2.py

Install NeoMutt

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 NeoMutt and Notmuch Emacs interface?

NeoMutt is a full-screen terminal client; Notmuch Emacs interface is a mail client that runs inside Emacs. Only NeoMutt has built-in IMAP, POP3 and mbox. Notmuch Emacs interface has mouse support; NeoMutt does not.

Which runs on Windows, NeoMutt or Notmuch Emacs interface?

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

See also: NeoMutt alternatives, Notmuch Emacs interface alternatives.