The NeoMutt E-Mail Client

Richard Russon

version 2024-10-02

Abstract

Teaching an old dog new tricks


Table of Contents

1. Introduction
1. NeoMutt Home Page
2. Mailing Lists
3. NeoMutt Online Resources
4. Contributing to NeoMutt
5. Typographical Conventions
6. Copyright
2. Getting Started
1. Core Concepts
2. Screens and Menus
2.1. Index
2.2. Pager
2.3. File Browser
2.4. Sidebar
2.5. Help
2.6. Compose Menu
2.7. Alias Menu
2.8. Attachment Menu
3. Moving Around in Menus
4. Editing Input Fields
4.1. Introduction
4.2. History
5. Reading Mail
5.1. The Message Index
5.2. The Pager
5.3. Threaded Mode
5.4. Miscellaneous Functions
6. Sending Mail
6.1. Introduction
6.2. Editing the Message Header
6.3. Sending Cryptographically Signed/Encrypted Messages
6.4. Sending Format=Flowed Messages
7. Forwarding and Bouncing Mail
8. Postponing Mail
9. Logging
10. Encryption and Signing
10.1. OpenPGP Configuration
10.2. S/MIME Configuration
3. Configuration
1. Location of Initialization Files
1.1. Location of system config files
1.2. Location of user config files
1.3. Config Priority
2. Starter NeoMuttrc
3. Syntax of Initialization Files
4. Address Groups
5. Defining/Using Aliases
6. Changing the Default Key Bindings
6.1. Binding a Key Sequence to a Function
6.2. Unbinding a Key Sequence
6.3. Enter versus Return
6.4. Warnings about Duplicated Bindings
6.5. Terminal Keybindings
7. Changing the current working directory
8. Defining Aliases for Character Sets
9. Setting Variables Based Upon Mailbox
10. Keyboard Macros
10.1. Creating a Key Macro
10.2. Removing a Key Macro
11. Using Color and Mono Video Attributes
11.1. Color Style
11.2. Simple Colors
11.3. Color Lists
11.4. Mono Color
12. Message Header Display
12.1. Header Display
12.2. Selecting Headers
12.3. Ordering Displayed Headers
13. Alternative Addresses
14. Mailing Lists
15. Using Multiple Spool Mailboxes
16. Monitoring Incoming Mail
17. User-Defined Headers
18. Specify Default Fcc: and/or Save Mailbox
19. Change Settings Based Upon Message Recipients
20. Change Settings Before Formatting a Message
21. Choosing the Cryptographic Key of the Recipient
22. Dynamically Changing $index_format using Patterns
23. Adding Key Sequences to the Keyboard Buffer
24. Executing Functions
25. Message Scoring
26. Spam Detection
27. Setting and Querying Variables
27.1. Variable Types
27.2. Commands
27.3. User-Defined Variables
27.4. Type Conversions
28. Reading Initialization Commands From Another File
29. Removing Hooks
30. Format Strings
30.1. Basic usage
30.2. Conditionals
30.3. Filters
30.4. Padding
30.5. Conditional Dates
30.6. Bytes size display
31. Control allowed header fields in a mailto: URL
4. Advanced Usage
1. Character Set Handling
2. Regular Expressions
3. Patterns: Searching, Limiting and Tagging
3.1. Pattern Modifier
3.2. Simple Searches
3.3. Nesting and Boolean Operators
3.4. Searching by Date
3.5. Gmail Patterns
4. Marking Messages
5. Using Tags
6. Using Hooks
6.1. Message Matching in Hooks
6.2. Mailbox Matching in Hooks
7. Managing the Environment
8. External Address Queries
9. Mailbox Formats
10. Mailbox Shortcuts
11. Handling Mailing Lists
12. Display Munging
13. New Mail Detection
13.1. How New Mail Detection Works
13.2. Polling For New Mail
13.3. Monitoring New Mail
13.4. Calculating Mailbox Message Counts
14. Editing Threads
14.1. Linking Threads
14.2. Breaking Threads
15. Delivery Status Notification (DSN) Support
16. Start a WWW Browser on URLs
17. Echoing Text
18. Message Composition Flow
19. Miscellany
5. NeoMutt's MIME Support
1. Using MIME in NeoMutt
1.1. MIME Overview
1.2. Viewing MIME Messages in the Pager
1.3. The Attachment Menu
1.4. The Compose Menu
2. MIME Type Configuration with mime.types
3. MIME Viewer Configuration with Mailcap
3.1. The Basics of the Mailcap File
3.2. Secure Use of Mailcap
3.3. Advanced Mailcap Usage
3.4. Example Mailcap Files
4. MIME Autoview
5. MIME Multipart/Alternative
5.1. Reading Multipart/Alternative Emails
5.2. Composing Multipart/Alternative Emails
6. MIME Multipart/Multilingual
6.1. Reading Multipart/Multilingual Emails
6.2. Composing Multipart/Multilingual Emails
7. MIME Multipart/Related
7.1. Composing Multipart/Related Emails
8. Attachment Searching and Counting
9. MIME Lookup
6. Optional Features
1. General Notes
1.1. Enabling/Disabling Features
1.2. URL Syntax
2. SSL/TLS Support
2.1. STARTTLS
2.2. Tunnel
3. POP3 Support
3.1. Remote POP3 mailboxes
3.2. Fetching mail from a POP3 server
4. IMAP Support
4.1. The IMAP Folder Browser
4.2. Authentication
5. SMTP Support
6. OAUTHBEARER and XOAUTH2 Support
7. Managing Multiple Accounts
8. Local Caching
8.1. Header Caching
8.2. Body Caching
8.3. Cache Directories
8.4. Maintenance
9. Account Command Feature
9.1. Support
9.2. Introduction
9.3. Usage
9.4. Known Bugs
9.5. Credits
10. Attach Headers Color Feature
10.1. Support
10.2. Introduction
10.3. Usage
10.4. neomuttrc
10.5. See Also
10.6. Known Bugs
10.7. Credits
11. Command-line Crypto (-C) Feature
11.1. Support
11.2. Introduction
11.3. Usage
11.4. neomuttrc
11.5. gitconfig
11.6. Credits
12. Compose to Sender Feature
12.1. Support
12.2. Introduction
12.3. Functions
12.4. neomuttrc
12.5. Known Bugs
12.6. Credits
13. Compressed Folders Feature
13.1. Support
13.2. Introduction
13.3. Commands
13.4. neomuttrc
13.5. See Also
13.6. Credits
14. Conditional Dates Feature
14.1. Support
14.2. Introduction
14.3. Variables
14.4. neomuttrc
14.5. See Also
14.6. Known Bugs
14.7. Credits
15. Encrypt-to-Self Feature
15.1. Support
15.2. Introduction
15.3. Variables
15.4. neomuttrc
15.5. Known Bugs
15.6. Credits
16. Encryption information block
16.1. Support
16.2. Introduction
16.3. Usage
16.4. Credits
17. Fmemopen Feature
17.1. Support
17.2. Introduction
17.3. See Also
17.4. Known Bugs
17.5. Credits
18. Forgotten Attachment Feature
18.1. Support
18.2. Introduction
18.3. Variables
18.4. neomuttrc
18.5. See Also
18.6. Known Bugs
18.7. Credits
19. Global Hooks
19.1. Introduction
19.2. Commands
19.3. neomuttrc
19.4. See Also
19.5. Known Bugs
19.6. Credits
20. Header Cache Compression Feature
20.1. Support
20.2. Introduction
20.3. Variables
20.4. neomuttrc
20.5. Known Bugs
20.6. Credits
21. Ifdef Feature
21.1. Support
21.2. Introduction
21.3. Commands
21.4. neomuttrc
21.5. Known Bugs
21.6. Credits
22. Index Color Feature
22.1. Support
22.2. Introduction
22.3. Colors
22.4. neomuttrc
22.5. See Also
22.6. Known Bugs
22.7. Credits
23. Initials Expando Feature
23.1. Support
23.2. Introduction
23.3. Variables
23.4. neomuttrc
23.5. See Also
23.6. Known Bugs
23.7. Credits
24. Kyoto Cabinet Feature
24.1. Support
24.2. Introduction
24.3. See Also
24.4. Known Bugs
24.5. Credits
25. Limit Current Thread Feature
25.1. Support
25.2. Introduction
25.3. Functions
25.4. neomuttrc
25.5. Known Bugs
25.6. Credits
26. LMDB Feature
26.1. Support
26.2. Introduction
26.3. See Also
26.4. Known Bugs
26.5. Credits
27. Multiple FCC Feature
27.1. Support
27.2. Introduction
27.3. See Also
27.4. Known Bugs
27.5. Credits
28. Nested If Feature
28.1. Support
28.2. Introduction
28.3. Variables
28.4. neomuttrc
28.5. See Also
28.6. Known Bugs
28.7. Credits
29. New Mail Feature
29.1. Support
29.2. Introduction
29.3. Variables
29.4. neomuttrc
29.5. See Also
29.6. Known Bugs
29.7. Credits
30. NNTP Feature
30.1. Support
30.2. Introduction
30.3. Variables
30.4. Functions
30.5. neomuttrc
30.6. Known Bugs
30.7. Credits
31. Custom backend based Tags Feature
31.1. Support
31.2. Introduction
31.3. Variables
31.4. Functions
31.5. Commands
31.6. Colors
31.7. neomuttrc
31.8. Credits
32. Notmuch Feature
32.1. Support
32.2. Introduction
32.3. Using Notmuch
32.4. Variables
32.5. Functions
32.6. Commands
32.7. Colors
32.8. neomuttrc
32.9. See Also
32.10. Known Bugs
32.11. Credits
33. Pager Read Delay Feature
33.1. Support
33.2. Introduction
33.3. Functions
33.4. Variables
33.5. neomuttrc
33.6. Known Bugs
33.7. Credits
34. Progress Bar Feature
34.1. Support
34.2. Introduction
34.3. Colors
34.4. neomuttrc
34.5. See Also
34.6. Known Bugs
34.7. Credits
35. Quasi-Delete Feature
35.1. Support
35.2. Introduction
35.3. Functions
35.4. neomuttrc
35.5. See Also
35.6. Known Bugs
35.7. Credits
36. Reply With X-Original-To Feature
36.1. Support
36.2. Introduction
36.3. Variables
36.4. neomuttrc
36.5. Credits
37. Sensible Browser Feature
37.1. Support
37.2. Introduction
37.3. See Also
37.4. Known Bugs
37.5. Credits
38. Sidebar Feature
38.1. Support
38.2. Introduction
38.3. Variables
38.4. Functions
38.5. Commands
38.6. Colors
38.7. Sort
38.8. neomuttrc
38.9. See Also
38.10. Known Bugs
38.11. Credits
39. Skip Quoted Feature
39.1. Support
39.2. Introduction
39.3. Functions
39.4. Variables
39.5. neomuttrc
39.6. Known Bugs
39.7. Credits
40. Status Color Feature
40.1. Support
40.2. Introduction
40.3. Commands
40.4. Colors
40.5. neomuttrc
40.6. See Also
40.7. Known Bugs
40.8. Credits
41. TLS-SNI Feature
41.1. Support
41.2. Introduction
41.3. Known Bugs
41.4. Credits
42. Trash Folder Feature
42.1. Support
42.2. Introduction
42.3. Variables
42.4. Functions
42.5. neomuttrc
42.6. See Also
42.7. Known Bugs
42.8. Credits
43. Use Threads Feature
43.1. Support
43.2. Introduction
43.3. Functions
43.4. Variables
43.5. Use Threads
43.6. neomuttrc
43.7. Known Bugs
43.8. Credits
44. Autocrypt
44.1. Requirements
44.2. First Run
44.3. Compose Menu
44.4. Account Management
44.5. Alternative Key and Keyring Strategies
7. Security Considerations
1. Passwords
2. Temporary Files
3. Information Leaks
3.1. Message-Id: headers
3.2. mailto:-style Links
4. External Applications
8. Performance Tuning
1. Reading and Writing Mailboxes
2. Reading Messages from Remote Folders
3. Searching and Limiting
9. Reference
1. Command-Line Options
2. Configuration Commands
3. Configuration Variables
4. Functions
4.1. Generic Menu
4.2. Index Menu
4.3. Pager Menu
4.4. Alias Menu
4.5. Query Menu
4.6. Attachment Menu
4.7. Compose Menu
4.8. Postpone Menu
4.9. Browser Menu
4.10. Pgp Menu
4.11. Smime Menu
4.12. Editor Menu
10. Miscellany
1. Acknowledgements
2. About This Document

List of Tables

1.1. Typographical conventions for special terms
2.1. sidebar_format
2.2. sidebar_format examples
2.3. Sidebar Color Priority
2.4. Most common navigation keys in entry-based menus
2.5. Most common navigation keys in page-based menus
2.6. Most common line editor keys
2.7. Most common message index keys
2.8. Message status flags
2.9. Message recipient flags
2.10. Most common pager keys
2.11. ANSI escape sequences
2.12. Color sequences
2.13. Most common thread mode keys
2.14. Special Thread Characters
2.15. Most common mail sending keys
2.16. Most common compose menu keys
2.17. PGP key menu flags
2.18. PGP key menu validity
3.1. NeoMutt config file search order
3.2. NeoMutt system config file locations
3.3. NeoMutt user config file locations
3.4. Config Priority
3.5. Symbolic key names
3.6. Fallback key bindings
3.7. Simple Colours
3.8. Simple Sidebar Colours
3.9. Simple Compose Colours
3.10. Quoted Email Colours
3.11. Colour Regex Lists
4.1. POSIX regular expression character classes
4.2. Regular expression repetition operators
4.3. GNU regular expression extensions
4.4. Pattern modifiers
4.5. Alias pattern modifiers
4.6. Relative Message Number Ranges
4.7. Message Number Shortcuts
4.8. Absolute Message Number Ranges
4.9. Simple search keywords
4.10. Date units
4.11. Relative date units
4.12. Gmail Example Patterns
4.13. Mailbox shortcuts
5.1. Supported MIME types
6.1. compose-to-sender Functions
6.2. Not all Hooks are Required
6.3. Potential Formatting Scheme
6.4. Date Formatting Codes
6.5. Example Date Tests
6.6. Example 1
6.7. Example 2
6.8. encrypt-self Variables
6.9. forgotten-attachment Variables
6.10. Header Cache Compression Variables
6.11. Header Cache Compression Methods and it's Levels
6.12. ifdef Symbols
6.13. Index Colors
6.14. Limit-Current-Thread Functions
6.15. New Mail Command Variables
6.16. NNTP Variables
6.17. NNTP Functions
6.18. Custom tags Variables
6.19. Notmuch/IMAP Functions
6.20. Index Colors
6.21. Notmuch Variables
6.22. Notmuch Functions
6.23. Progress Colors
6.24. Quasi-Delete Functions
6.25. Reply With X-Original-To Variables
6.26. Sidebar Variables
6.27. Sidebar Functions
6.28. Sidebar Colors
6.29. Sidebar Sort
6.30. Skip Quoted Functions
6.31. Skip-Quoted Variables
6.32. Status Colors
6.33. Trash Variables
6.34. Trash Functions
6.35. Use Threads
9.1. Command line options
9.2. Default Generic Menu Bindings
9.3. Default Index Menu Bindings
9.4. Default Pager Menu Bindings
9.5. Default Alias Menu Bindings
9.6. Default Query Menu Bindings
9.7. Default Attachment Menu Bindings
9.8. Default Compose Menu Bindings
9.9. Default Postpone Menu Bindings
9.10. Default Browser Menu Bindings
9.11. Default Pgp Menu Bindings
9.12. Default Smime Menu Bindings
9.13. Default Editor Menu Bindings

List of Examples

3.1. Multiple configuration commands per line
3.2. Commenting configuration files
3.3. Escaping quotes in configuration files
3.4. Splitting long configuration commands over several lines
3.5. Using external command's output in configuration files
3.6. Preventing the output of backticks from being parsed
3.7. Using environment variables in configuration files
3.8. Configuring external alias files
3.9. Setting sort method based on mailbox name
3.10. Header weeding
3.11. Configuring header display order
3.12. Defining custom headers
3.13. Using %-expandos in save-hook
3.14. Embedding push in folder-hook
3.15. Configuring spam detection
3.16. Using user-defined variables for config file readability
3.17. Using user-defined variables for backing up other config option values
3.18. Deferring user-defined variable expansion to runtime
3.19. Type conversions using variables
3.20. Using external filters in format strings
4.1. Matching a literal dot
4.2. Using \s and matching a literal dot in patterns
4.3. Matching all addresses in address lists
4.4. Matching restricted to aliases
4.5. Matching any defined alias
4.6. Using boolean operators in patterns
4.7. Specifying a default hook
4.8. Subject Munging
5.1. mime.types
5.2. Attachment counting
6.1. URLs
6.2. Managing multiple accounts
6.3. Example of open-hook
6.4. Example of close-hook
6.5. Example of append-hook