neomutt
Read, compose, and send email
TLDR
Open the specified mailbox
Start writing an email and specify a subject and a cc recipient
Send an email with files attached
Specify a file to include as the message body
Specify a draft file containing the header and the body of the message, in RFC 5322 format
SYNOPSIS
neomutt [-a alias] [-e command] [-f mailbox] [-F config_file] [-h] [-n] [-v] [address...]
PARAMETERS
-a alias
Use the specified alias when sending a message.
-e command
Execute command after processing all configuration files.
-f mailbox
Open the specified mailbox instead of the default.
-F config_file
Use config_file as the configuration file instead of the default ~/.neomuttrc.
-h
Display a brief help message and exit.
-n
Do not source the system-wide configuration file.
-s subject
Specify the subject of the message to be sent.
-v
Display the neomutt version number and exit.
-y
Start with an empty message, typically used for composing a new email without a recipient.
-z
Force neomutt to start even if the specified mailbox is empty.
address...
One or more recipient email addresses when composing a new message from the command line.
DESCRIPTION
Neomutt is a highly configurable, keyboard-driven, text-based email client (MUA). It's a fork of the popular Mutt email client, created to incorporate new features, bug fixes, and maintain active development. Neomutt provides a rich set of functionalities for managing email, including support for various mailbox formats (mbox, Maildir), multiple protocols (IMAP, POP3, SMTP), PGP/GPG encryption, S/MIME, and extensive filtering capabilities. Its strength lies in its extreme configurability, allowing users to tailor nearly every aspect of its behavior and appearance through a simple configuration file, making it a favorite among power users and command-line enthusiasts.
CAVEATS
Due to its extensive configuration and keyboard-driven interface, neomutt has a steep learning curve. It requires manual setup and often relies on external tools like msmtp, fetchmail, and procmail for full mail sending, receiving, and processing functionality. As a text-based client, it does not natively render HTML emails, usually requiring external viewers.
CONFIGURATION FILES
Neomutt's behavior is extensively controlled via configuration files. The primary user-specific file is typically ~/.neomuttrc or ~/.config/neomutt/neomuttrc. These files are written in a specialized scripting language, enabling users to define key bindings, mail handling rules, color schemes, and integrate with external tools. System-wide configurations may also exist.
KEYBOARD-DRIVEN INTERFACE
Neomutt is designed for efficient keyboard navigation, minimizing reliance on mouse input. Almost every action, from navigating mailboxes and messages to composing and replying, can be performed with specific key combinations. This design choice contributes to its speed and efficiency for experienced users.
EXTENSIBILITY AND HOOKS
Beyond direct configuration, Neomutt offers robust extensibility through hooks and macros. Users can define actions to be executed before or after specific events (e.g., opening a mailbox, sending a message). It also supports integration with numerous external programs for tasks like attachment viewing, mail filtering, and cryptographic operations, making it highly adaptable to diverse workflows.
HISTORY
Neomutt is a vibrant fork of the popular Mutt email client, which was originally authored by Michael Elkins in 1995. While Mutt gained significant traction for its power and flexibility, its development pace slowed over time, leading to a backlog of unmerged patches and features. In 2014, a community of developers initiated Neomutt to actively integrate these external patches, provide ongoing maintenance, and introduce modern features such as a sidebar, improved IMAP support, and notmuch integration. It maintains full configuration compatibility with Mutt, allowing seamless migration for existing users.