Under Development
stars

General Options#

General configuration options control NeoMutt’s core behaviour. These options do not belong to a specific feature domain (such as IMAP, PGP, or Sidebar).


$abort_backspace#

Description:

Hitting backspace against an empty prompt aborts the prompt

Type:

Boolean

Default:
set abort_backspace = yes

If set, hitting backspace against an empty prompt aborts the prompt.


$abort_key#

Description:

String representation of key to abort prompts

Type:

String

Notes:

Not Empty, On Startup

Default:
set abort_key = "\007"

Specifies the key that can be used to abort prompts. The format is the same as used in “bind” commands. The default is equivalent to Ctrl-G.

Note

The specified key should not be used in other bindings, as the abort operation has higher precedence and the binding will not have the desired effect.

Example:

set abort_key = "<Esc>"

Note

When using <Esc> as the abort key, you may also want to set the environment variable ESCDELAY to a low value or even 0 which will reduce the time that ncurses waits to distinguish singular <Esc> key presses from the start of a terminal escape sequence. The default time is 1000 milliseconds and thus quite noticeable.


$ascii_chars#

Description:

Use plain ASCII characters, when drawing email threads

Type:

Boolean

Default:
set ascii_chars = no

If set, NeoMutt will use plain ASCII characters when displaying thread and attachment trees, instead of the default ACS characters.


$assumed_charset#

Description:

If a message is missing a character set, assume this character set

Type:

String List

Notes:

Colon-separated, Allow Empty

Default:

(empty)

set assumed_charset = ""

A colon-separated list of character encoding schemes for messages without character encoding indication. Header field values and message body content without character encoding indication would be assumed that they are written in one of this list. By default, all the header fields and message body without any charset indication are assumed to be in “us-ascii”.

For example, Japanese users might prefer this:

set assumed_charset = "iso-2022-jp:euc-jp:shift_jis:utf-8"

However, only the first content is valid for the message body.


$attach_format#

Description:

Format string for the Attach Dialog

Type:

Expando

Notes:

Not Empty, Pipe Support

Default:
set attach_format = "%u%D%I %t%4n %T%d %> [%.7m/%.10M, %.6e%<C?, %C>, %s] "
Alternative:
set attach_format = "%{unlink}%{deleted}%{disposition} %{tagged}%4{number} %{tree}%{description} %{padding-hard: }[%.7{mime-major}/%.10{mime-minor}, %.6{mime-encoding}%<C?, %{charset}>, %{file-size}] "

Specify the format of the data displayed in the Attach Dialog.

Format Sequences

Short

Long Name

Description

%C

%{charset}

Charset

%c

%{charset-convert}

Requires charset conversion (n or c)

%D

%{deleted}

Deleted flag

%d

%{description}

Description (if none, falls back to %F)

%e

%{mime-encoding}

MIME content-transfer-encoding

%F

%{file-disposition}

Filename in content-disposition header (if none, falls back to %f)

%f

%{file}

Filename

%I

%{disposition}

Disposition (I for inline, A for attachment)

%M

%{mime-minor}

MIME subtype

%m

%{mime-major}

Major MIME type

%n

%{number}

Attachment number

%Q

%{attach-qualifies}

Q, if MIME part qualifies for attachment counting

%s

%{file-size}

Size (see Bytes Size Display)

%T

%{tree}

Graphic tree characters

%t

%{tagged}

Tagged flag

%u

%{unlink}

Unlink (=to delete) flag

%X

%{attach-count}

Number of qualifying MIME parts in this part and its children

(see the $attachments section for possible speed effects)

%*X

%{padding-soft:X}

Soft-fill with character X as padding

%>X

%{padding-hard:X}

Right justify the rest of the string and pad with character X

%|X

%{padding-eol:X}

Pad to the end of the line with character X


$auto_edit#

Description:

Skip the initial compose menu and edit the email

Type:

Boolean

Default:
set auto_edit = no

When set along with $edit_headers, NeoMutt will skip the initial send-menu (prompting for subject and recipients) and allow you to immediately begin editing the body of your message. The send-menu may still be accessed once you have finished editing the body of your message.

Note

When this option is set, you can’t use send-hooks that depend on the recipients when composing a new (non-reply) message, as the initial list of recipients is empty.

See also

$fast_reply


$auto_tag#

Description:

Automatically apply actions to all tagged messages

Type:

Boolean

Default:
set auto_tag = no

When set, functions in the index menu which affect a message will be applied to all tagged messages (if there are any). When unset, you must first use the <tag-prefix> function (bound to ; by default) to make the next function apply to all tagged messages.


$braille_friendly#

Description:

Move the cursor to the beginning of the line

Type:

Boolean

Default:
set braille_friendly = no

When this option is set, NeoMutt will place the cursor at the beginning of the current line in menus, even when the $arrow_cursor option is unset, making it easier for blind persons using Braille displays to follow these menus. The option is unset by default because many visual terminals don’t permit making the cursor invisible.


$charset#

Description:

Default character set for displaying text on screen

Type:

String

Notes:

Not Empty, Charset Single

Default:

(empty)

set charset = ""

Character set your terminal uses to display and enter textual data. It is also the fallback for $send_charset.

Upon startup NeoMutt tries to derive this value from environment variables such as $LC_CTYPE or $LANG.

Note

It should only be set in case NeoMutt isn’t able to determine the character set used correctly.


$color_directcolor#

Description:

Use 24bit colors (aka truecolor or directcolor)

Type:

Boolean

Notes:

On Startup

Default:
set color_directcolor = no

When set, NeoMutt will use and allow 24-bit colours (aka truecolor aka directcolor). For colours to work properly support from the terminal is required as well as a properly set $TERM environment variable advertising the terminals directcolor capability, e.g. TERM=xterm-direct.

NeoMutt tries to detect whether the terminal supports 24-bit colours and enables this option if it does. If this fails for some reason, you can force 24-bit colours by setting this option manually. You may also try to force a certain $TERM environment variable by starting NeoMutt from a terminal as follows (this results in wrong colours if the terminal does not implement directcolors):

TERM=xterm-direct neomutt

Note

Must be set before using any color commands.


$config_charset#

Description:

Character set that the config files are in

Type:

String

Default:

(empty)

set config_charset = ""

When defined, NeoMutt will recode commands in rc files from this encoding to the current character set as specified by $charset and aliases written to $alias_file from the current character set.

Note

If setting $charset it must be done before setting $config_charset.

Recoding should be avoided as it may render unconvertible characters as question marks which can lead to undesired side effects (for example in regular expressions).


$confirm_append#

Description:

Confirm before appending emails to a mailbox

Type:

Boolean

Default:
set confirm_append = yes

When set, NeoMutt will prompt for confirmation when appending messages to an existing mailbox.


$confirm_create#

Description:

Confirm before creating a new mailbox

Type:

Boolean

Default:
set confirm_create = yes

When set, NeoMutt will prompt for confirmation when saving messages to a mailbox which does not yet exist before creating it.


$copy_decode_weed#

Description:

Controls whether to weed headers when copying or saving emails

Type:

Boolean

Default:
set copy_decode_weed = no

Controls whether NeoMutt will weed headers when invoking the <decode-copy> or <decode-save> functions.


$date_format#

Description:

strftime(3) format string for the %d expando

Type:

String

Notes:

Not Empty

Default:
set date_format = "!%a, %b %d, %Y at %I:%M:%S%p %Z"

Instead of using $date_format it is encouraged to use “%[fmt]” directly in the corresponding format strings, where “fmt” is the value of $date_format. This allows for a more fine grained control of the different menu needs.

Control the format of the date printed by the %d sequence in $index_format. This is passed to the strftime(3) function to process the date.

Unless the first character in the string is a bang (!), the month and week day names are expanded according to the locale. If the first character in the string is a bang, the bang is discarded, and the month and week day names in the rest of the string are expanded in the C locale (that is in US English).

Format strings using this option are:

UI: $folder_format, $index_format, $mailbox_folder_format, $message_format.

Composing: $attribution_intro, $forward_attribution_intro, $forward_attribution_trailer, $forward_format, $indent_string.


$debug_file#

Description:

File to save debug logs

Type:

Path (String)

Notes:

File only

Default:
set debug_file = "~/.neomuttdebug"

Debug logging is controlled by the option $debug_file and $debug_level. $debug_file specifies the root of the filename. NeoMutt will add 0 to the end. Each time NeoMutt is run with logging enabled, the log files are rotated. A maximum of five log files are kept, numbered 0 (most recent) to 4 (oldest).

Can also be enabled on the command line,

neomutt -l mylog

See also

$debug_level


$debug_level#

Description:

Logging level for debug logs

Type:

Number

Default:
set debug_level = 0

Debug logging is controlled by the option $debug_file and $debug_level.

The debug level controls how much information is saved to the log file. If you have a problem with NeoMutt, then enabling logging may help find the cause. Levels 1-3 will usually provide enough information for writing a bug report. Levels 4,5 will be extremely verbose.

Warning

Logging at high levels may save private information to the file.

Can also be enabled on the command line,

neomutt -d 2

See also

$debug_file


$delete#

Description:

Really delete messages, when the mailbox is closed

Type:

Quad-Option

Default:
set delete = ask-yes

Controls whether or not messages are really deleted when closing or synchronizing a mailbox. If set to yes, messages marked for deleting will automatically be purged without prompting. If set to no, messages marked for deletion will be kept in the mailbox.


$delete_untag#

Description:

Untag messages when they are marked for deletion

Type:

Boolean

Default:
set delete_untag = yes

If this option is set, NeoMutt will untag messages when marking them for deletion. This applies when you either explicitly delete a message, or when you save it to another folder.


$devel_security#

Description:

Devel feature: Security – Issue #4251

Type:

Boolean

Default:
set devel_security = no

If this option is set, NeoMutt will enable the Security development features.


$editor#

Description:

External command to use as an email editor

Type:

Command (String)

Notes:

Not Empty

Default:

(empty)

set editor = ""

Specify which editor NeoMutt uses. It defaults to the value of the $VISUAL, or $EDITOR, environment variable, or to the string vi if neither of those are set.

The $editor string may contain a %s escape, which will be replaced by the name of the file to be edited. If the %s escape does not appear in $editor, a space and the name to be edited are appended.

The resulting string is then executed by running:

sh -c 'string'

where string is the expansion of $editor described above.


$flag_safe#

Description:

Protect flagged messages from deletion

Type:

Boolean

Default:
set flag_safe = no

If set, flagged messages can’t be deleted.


$folder#

Description:

Base folder for a set of mailboxes

Type:

Mailbox (String)

Default:
set folder = "~/Mail"

Specifies the default location of your mailboxes. A + or = at the beginning of a pathname will be expanded to the value of this option.

Note

If you change this option value you need to make sure that the assignment occurs before you use + or = for any other option since expansion takes place when handling the :mailboxes command.


$forward_decode#

Description:

Decode the message when forwarding it

Type:

Boolean

Default:
set forward_decode = yes

Controls the decoding of complex MIME messages into text/plain when forwarding a message. The message header is also RFC2047 decoded. Only used if $mime_forward is unset, otherwise $mime_forward_decode is used instead.


$forward_quote#

Description:

Automatically quote a forwarded message using $indent_string

Type:

Boolean

Default:
set forward_quote = no

When set, forwarded messages included in the main body of the message (when $mime_forward is unset) will be quoted using $indent_string.


$from#

Description:

Default From address to use, if isn’t otherwise set

Type:

Address

Default:

(empty)

set from = ""

When set, this option contains a default “from” address. It can be overridden using :my-header (including from a :send-hook) and $reverse_name. Ignored if $use_from is unset.

If not specified, then it may be read from the environment variable $EMAIL.


$gecos_mask#

Description:

Regex for parsing GECOS field of /etc/passwd

Type:

Regular Expression

Notes:

Smart Case

Default:
set gecos_mask = "^[^,]*"

A regular expression used by NeoMutt to parse the GECOS field of a password entry when expanding the alias. The default value will return the string up to the first , encountered. If the GECOS field contains a string like “lastname, firstname” then you should set it to .*.

This can be useful if you see the following behavior: you address an e-mail to user ID “stevef” whose full name is “Steve Franklin”. If NeoMutt expands “stevef” to ‘“Franklin” stevef@foo.bar’ then you should set the $gecos_mask to a regular expression that will match the whole name so NeoMutt will expand “Franklin” to “Franklin, Steve”.


$help#

Description:

Display a help line with common key bindings

Type:

Boolean

Default:
set help = yes

When set, help lines describing the bindings for the major functions provided by each menu are displayed on the first line of the screen.

Note

The binding will not be displayed correctly if the function is bound to a sequence rather than a single keystroke. Also, the help line may not be updated if a binding is changed while NeoMutt is running. Since this option is primarily aimed at new users, neither of these should present a major problem.


$hostname#

Description:

Fully-qualified domain name of this machine

Type:

String

Default:

(empty)

set hostname = ""

Specifies the fully-qualified hostname of the system NeoMutt is running on containing the host’s name and the DNS domain it belongs to. It is used as the domain part (after @) for local email addresses.

If not specified in a config file, then NeoMutt will try to determine the hostname itself.

Optionally, NeoMutt can be compiled with a fixed domain name.


$indent_string#

Description:

String used to indent “reply” text

Type:

Expando

Default:
set indent_string = "> "

Specifies the string to prepend to each line of text quoted in a message to which you are replying. You are strongly encouraged not to change this value, as it tends to agitate the more fanatical netizens.

The value of this option is ignored if $text_flowed is set, because the quoting mechanism is strictly defined for format=flowed.


$keep_flagged#

Description:

Don’t move flagged messages from $spool_file to $mbox

Type:

Boolean

Default:
set keep_flagged = no

If set, read messages marked as flagged will not be moved from your spool mailbox to your $mbox mailbox or to the “mbox” specified by a :mbox-hook command.

Note

$keep_flagged only has an effect if $move is set


$local_date_header#

Description:

Convert the date in the Date header of sent emails into local timezone, UTC otherwise

Type:

Boolean

Default:
set local_date_header = yes

If set, the date in the Date header of emails that you send will be in your local timezone. If unset a UTC date will be used instead to avoid leaking information about your current location.


$mail_check#

Description:

Number of seconds before NeoMutt checks for new mail

Type:

Number

Notes:

Not Negative

Default:
set mail_check = 5

Configure how often (in seconds) NeoMutt looks for new mail.

See also

$timeout


$mail_check_recent#

Description:

Notify the user about new mail since the last time the mailbox was opened

Type:

Boolean

Default:
set mail_check_recent = yes

When set, NeoMutt will only notify you about new mail that has been received since the last time you opened the mailbox. When unset, NeoMutt will notify you if any new mail exists in the mailbox, regardless of whether you have visited it recently.


$mail_check_stats#

Description:

Periodically check for new mail

Type:

Boolean

Default:
set mail_check_stats = no

When set, NeoMutt will periodically calculate message statistics of a mailbox while polling for new mail. It will check for unread, flagged, and total message counts.

Note

IMAP mailboxes only support unread and total counts

Because this operation is more performance intensive, it defaults to unset, and has a separate option, $mail_check_stats_interval, to control how often to update these counts.

Message statistics can also be explicitly calculated by invoking the <check-stats> function.


$mail_check_stats_interval#

Description:

How often to check for new mail

Type:

Number

Notes:

Not Negative

Default:
set mail_check_stats_interval = 60

When $mail_check_stats is set, this option configures how often (in seconds) NeoMutt will update message counts.


$mark_old#

Description:

Mark new emails as old when leaving the mailbox

Type:

Boolean

Default:
set mark_old = yes

Controls whether or not NeoMutt marks new unread messages as old if you exit a mailbox without reading them. With this option set, the next time you start NeoMutt, the messages will show up with an O next to them in the index menu, indicating that they are old.


$mbox#

Description:

Folder that receives read emails

Type:

Mailbox (String)

Default:
set mbox = "~/mbox"

This specifies the folder into which read mail in your $spool_file folder will be appended.

See also

$move


$mbox_type#

Description:

Default type for creating new mailboxes

Type:

Enumeration

Default:
set mbox_type = mbox

The default mailbox type used when creating new folders.

Values

maildir

mbox

mh

mmdf

This can also be set using the neomutt -m command-line option.


$message_cache_clean#

Description:

Clean out obsolete entries from the message cache

Type:

Boolean

Default:
set message_cache_clean = no

If set, NeoMutt will clean out obsolete entries from the message cache when the mailbox is synchronized. You probably only want to set it every once in a while, since it can be a little slow (especially for large folders).


$message_cache_dir#

Description:

Directory for the message cache

Type:

Path (String)

Notes:

Directory only

Default:

(empty)

set message_cache_dir = ""

Set this to a directory and NeoMutt will cache copies of messages from your IMAP and POP servers here. You are free to remove entries at any time.

When setting this option to a directory, NeoMutt needs to fetch every remote message only once and can perform regular expression searches as fast as for local folders.


$meta_key#

Description:

Interpret ‘ALT-x’ as ‘ESC-x’

Type:

Boolean

Default:
set meta_key = no

If set, forces NeoMutt to interpret keystrokes with the high bit (bit 8) set as if the user had pressed the Esc key and whatever key remains after having the high bit removed. For example, if the key pressed has an ASCII value of 0xf8, then this is treated as if the user had pressed Esc then x. This is because the result of removing the high bit from 0xf8 is 0x78, which is the ASCII character x.


$move#

Description:

Move emails from $spool_file to $mbox when read

Type:

Quad-Option

Default:
set move = no

If this option is set, then NeoMutt will move read messages from your spool mailbox to your $mbox mailbox or to the “mbox” specified by a :mbox-hook command.

See also

$keep_flagged


$pipe_decode#

Description:

Decode the message when piping it

Type:

Boolean

Default:
set pipe_decode = no

Used in connection with the <pipe-message> function. When unset, NeoMutt will pipe the messages without any preprocessing. When set, NeoMutt will attempt to decode the messages first.

See also

$pipe_decode_weed, which controls whether headers will be weeded when this is set


$pipe_decode_weed#

Description:

Control whether to weed headers when piping an email

Type:

Boolean

Default:
set pipe_decode_weed = yes

For <pipe-message>, when $pipe_decode is set, this further controls whether NeoMutt will weed headers.


$pipe_sep#

Description:

Separator to add between multiple piped messages

Type:

String

Default:
set pipe_sep = "\n"

The separator to add between messages when piping a list of tagged messages to an external Unix command.


$pipe_split#

Description:

Run the pipe command on each message separately

Type:

Boolean

Default:
set pipe_split = no

Used in connection with the <pipe-message> function following <tag-prefix>.

If this option is unset, when piping a list of tagged messages NeoMutt will concatenate the messages and will pipe them all concatenated. When set, NeoMutt will pipe the messages one by one. In both cases the messages are piped in the current sorted order, and the $pipe_sep separator is added after each message.


$postponed#

Description:

Folder to store postponed messages

Type:

Mailbox (String)

Default:
set postponed = "~/postponed"

NeoMutt allows you to indefinitely “$postpone sending a message” which you are editing. When you choose to postpone a message, NeoMutt saves it in the mailbox specified by this option.

See also

$postpone


$print#

Description:

Confirm before printing a message

Type:

Quad-Option

Default:
set print = ask-no

Controls whether or not NeoMutt really prints messages. This is set to ask-no by default, because some people accidentally hit p often.


$quote_regex#

Description:

Regex to match quoted text in a reply

Type:

Regular Expression

Notes:

Smart Case

Default:
set quote_regex = "^([ \t]*[|>:}#])+"

A regular expression used in the internal pager to determine quoted sections of text in the body of a message. Quoted text may be filtered out using the <toggle-quoted> command, or colored according to the color quotedN family of directives.

Higher levels of quoting may be colored differently (color quoted1, color quoted2, etc.). The quoting level is determined by removing the last character from the matched text and recursively reapplying the regular expression until it fails to produce a match.

Match detection may be overridden by the $smileys regular expression.


$real_name#

Description:

Real name of the user

Type:

String

Default:

(empty)

set real_name = ""

Specify what “real” or “personal” name to use when sending messages.

If not specified, then the user’s “real name” will be read from /etc/passwd. Not used if $from is set.


$record#

Description:

Folder to save ‘sent’ messages

Type:

Mailbox (String)

Default:
set record = "~/sent"

This specifies the file into which your outgoing messages should be appended. (This is meant as the primary method for saving a copy of your messages, but another way to do this is using the :my-header command to create a Bcc: field with your email address in it.)

The value of $record is overridden by the $force_name and $save_name option, and the :fcc-hook command.

See also

$copy, $write_bcc.


$resolve#

Description:

Move to the next email whenever a command modifies an email

Type:

Boolean

Default:
set resolve = yes

When set, the cursor in a list will be automatically advanced to the next (possibly undeleted) message/attachment/entry whenever a command that modifies the current message/attachment/entry is executed.

Examples of such commands are tagging a message, deleting an entry, or saving an attachment.


$resume_edited_draft_files#

Description:

Resume editing previously saved draft files

Type:

Boolean

Default:
set resume_edited_draft_files = yes

If set, draft files previously edited (via -E -H on the command line) will have $resume_draft_files automatically set when they are used as a draft file again.

The first time a draft file is saved, NeoMutt will add a header, X-Mutt-Resume-Draft to the saved file. The next time the draft file is read in, if NeoMutt sees the header, it will set $resume_draft_files.

Prevent multiple signatures, user-defined headers, and other processing effects from being applied multiple times to the draft file.


$save_address#

Description:

Use sender’s full address as a default save folder

Type:

Boolean

Default:
set save_address = no

If set, NeoMutt will take the sender’s full address when choosing a default folder for saving a mail. If $save_name or $force_name is set too, the selection of the Fcc folder will be changed as well.


$save_empty#

Description:

Preserve empty mailboxes

Type:

Boolean

Scope:

Only mbox and mmdf mailboxes

Default:
set save_empty = yes

When unset, mailboxes which contain no saved messages will be removed when closed (the exception is $spool_file which is never removed). If set, mailboxes are never removed.

Note

NeoMutt does not delete MH and Maildir directories.


$send_charset#

Description:

Character sets for outgoing mail

Type:

String List

Notes:

Colon-separated, Allow Empty, Charset Strict

Default:
set send_charset = "us-ascii:iso-8859-1:utf-8"

A colon-delimited list of character sets for outgoing messages. NeoMutt will use the first character set into which the text can be converted exactly. If your $charset is not “iso-8859-1” and recipients may not understand “UTF-8”, it is advisable to include in the list an appropriate widely used standard character set (such as “iso-8859-2”, “koi8-r” or “iso-2022-jp”) either instead of or after “iso-8859-1”.

In case the text can’t be converted into one of these exactly, NeoMutt uses $charset as a fallback.


$shell#

Description:

External command to run subshells in

Type:

Command (String)

Default:
set shell = "/bin/sh"

Command to use when spawning a subshell. If not specified, then the user’s login shell from /etc/passwd is used.


$size_show_bytes#

Description:

Show smaller sizes in bytes

Type:

Boolean

Default:
set size_show_bytes = no

If set, message sizes will display bytes for values less than 1 kilobyte.


$size_show_fractions#

Description:

Show size fractions with a single decimal place

Type:

Boolean

Default:
set size_show_fractions = yes

If set, message sizes will be displayed with a single decimal value for sizes from 0 to 10 kilobytes and 1 to 10 megabytes.


$size_show_mb#

Description:

Show sizes in megabytes for sizes greater than 1 megabyte

Type:

Boolean

Default:
set size_show_mb = yes

If set, message sizes will display megabytes for values greater than or equal to 1 megabyte.


$size_units_on_left#

Description:

Show the units as a prefix to the size

Type:

Boolean

Default:
set size_units_on_left = no

If set, message sizes units will be displayed to the left of the number.


$sleep_time#

Description:

Time to pause after certain info messages

Type:

Number

Notes:

Not Negative

Default:
set sleep_time = 1

Specifies time, in seconds, to pause while displaying certain informational messages, while moving from folder to folder and after expunging messages from the current folder. The default is to pause one second, so a value of zero for this option suppresses the pause.


$sort#

Description:

Sort method for the Index Dialog

Type:

Sort Order

Notes:

Reverse, Last

Default:
set sort = date

Specifies how to sort messages in the “index” menu.

Value

Sort by

date

The date the email was sent

date-received

When the message was delivered locally

from

The email’s From field

label

The emails label

score

The email’s score

size

The size of the email

spam

The email’s spam score

subject

The email’s subject

threads

Email threads

to

The email’s To field

unsorted

The order the messages appear in the mailbox

Deprecated Value

Use this instead

date-sent

date

mailbox-order

unsorted

You may optionally use the “reverse-” prefix to specify reverse sorting order, or the “last-” prefix to sort threads based on the corresponding attribute of the last descendant rather than the thread root. If both prefixes are in use, “reverse-” must come before “last-”. The “last-” prefix has no effect on a flat view.

Any ties in the primary sort are broken by $sort_aux. When $use_threads is “threads” or “reverse”, $sort controls the sorting between threads, and $sort_aux controls the sorting within a thread.

The values of “threads” and “reverse-threads” are legacy options, which cause the value of $sort_aux to also control sorting between threads, and they may not be used with the “last-” prefix. The preferred way to enable a threaded view is via $use_threads.
Can also be set via the <sort-mailbox> and <sort-reverse> functions.

Note

When $use_threads is “threads”, the last thread sorts to the bottom; when it is “reversed”, the last thread sorts to the top. The use of “reverse-” in $sort swaps which end the last thread will sort to.

See also

Use Threads 🔥


$sort_aux#

Description:

Secondary sort method for the Index

Type:

Sort Order

Notes:

Reverse, Last

Default:
set sort_aux = date

This provides a secondary sort for messages in the “index” menu, used when the $sort value is equal for two messages.

When sorting by threads, this option controls how subthreads are sorted within a single thread (for the order between threads, see $sort). This can be set to any value that $sort can, including with the use of “reverse-” and “last-” prefixes, except for variations using “threads” (in that case, NeoMutt will just use “date”).

For instance,

set sort_aux = last-date-received

would mean that if a new message is received in a thread, that subthread becomes the last one displayed (or the first, if you have set use_threads = reverse) When using $use_threads, it is more common to use “last-” with $sort and not with $sort_aux.

See also

Use Threads 🔥


$spool_file#

Description:

Inbox

Type:

Mailbox (String)

Default:

(empty)

set spool_file = ""

If your spool mailbox is in a non-default place where NeoMutt can’t find it, you can specify its location with this variable. The description from “named-mailboxes” may be used for the spool_file.

If not specified, then the environment variables $MAIL and $MAILDIR will be checked.


$status_on_top#

Description:

Display the status bar at the top

Type:

Boolean

Default:
set status_on_top = no

Setting this option causes the “status bar” to be displayed on the first line of the screen rather than near the bottom. If $help is set too, it’ll be placed at the bottom.


$suspend#

Description:

Allow the user to suspend NeoMutt using ^Z

Type:

Boolean

Default:
set suspend = yes

When unset, NeoMutt won’t stop when the user presses the terminal’s susp key, usually Ctrl-Z. This is useful if you run NeoMutt inside an xterm using a command like xterm -e neomutt

On startup NeoMutt tries to detect if it is the process session leader. If so, the default of $suspend is no otherwise yes. This default covers the above mentioned use case of xterm -e neomutt


$text_flowed#

Description:

Generate format=flowed messages

Type:

Boolean

Default:
set text_flowed = no

When set, NeoMutt will generate “format=flowed” bodies with a content type of text/plain; format=flowed

This format is easier to handle for some mailing software, and generally just looks like ordinary text. To actually make use of this format’s features, you’ll need support in your editor.

The option only controls newly composed messages. Postponed messages, resent messages, and draft messages (via -H on the command line) will use the content-type of the source message.

Note

$indent_string is ignored when this option is set


$timeout#

Description:

Time to wait for user input in menus

Type:

Number

Notes:

Not Negative

Default:
set timeout = 600

Set the time interval in seconds at which :timeout-hook commands are executed while waiting for user input, either idling in menus or in an interactive prompt.

A value of zero disables timeout hooks.


$tmp_dir#

Description:

Directory for temporary files

Type:

Path (String)

Notes:

Directory only, Not Empty

Default:
set tmp_dir = "/tmp"

Specify where NeoMutt places its temporary files needed for displaying messages.

If this option is not set, the environment variable $TMPDIR is used. Failing that, then /tmp is used.


$tmp_draft_dir#

Description:

Directory for Compose temporary files

Type:

Path (String)

Notes:

Directory only, Not Empty

Default:
set tmp_draft_dir = "/var/tmp"

Specify where NeoMutt places its temporary files when composing messages.

If this option is not set, the environment variable $TMPDIR is used. Failing that, then /var/tmp is used.

It is recommended that this be set to a directory whose contents won’t be removed during an unanticipated reboot, so that draft files will survive a crash or other unplanned computer shutdown.


$trash#

Description:

Folder to put deleted emails

Type:

Mailbox (String)

Default:

(empty)

set trash = ""

If set, this option specifies the path of the trash folder where the mails marked for deletion will be moved, instead of being irremediably purged.

Note

When you delete a message in the trash folder, it is really deleted, so that you have a way to clean the trash.


$use_domain#

Description:

Qualify local addresses using this domain

Type:

Boolean

Default:
set use_domain = yes

When set, NeoMutt will qualify all local addresses (ones without the “@host” portion) with the value of $hostname. If unset, no addresses will be qualified.


$use_threads#

Description:

Whether to use threads for the index

Type:

Enumeration

Default:
set use_threads = unset

The style of threading used in the index.

Value

Meaning

unset

Not set (no threading)

flat

No threading

threads

Threaded, with subthreads below root message

reverse

Threaded, with subthreads above root message

yes

Synonym for threads

no

Synonym for flat

If this option is never set, then $sort controls whether threading is used, $sort_aux controls both the sorting of threads and subthreads, and using <sort-mailbox> to select threads affects only $sort. Once this option is set, attempting to set $sort to a value using “threads” will warn, the value of $sort controls the sorting between threads while $sort_aux controls sorting within a thread, and <sort-mailbox> toggles $use_threads.

Example:

set use_threads = yes

See also

Use Threads 🔥


$wait_key#

Description:

Prompt to press a key after running external commands

Type:

Boolean

Default:
set wait_key = yes

Controls whether NeoMutt will ask you to press a key after an external command has been invoked by these functions: <shell-escape>, <pipe-message>, <pipe-entry>, <print-message>, and <print-entry> commands.

It is also used when viewing attachments with :auto-view, provided that the corresponding mailcap entry has a needsterminal flag, and the external program is interactive.

When set, NeoMutt will always ask for a key. When unset, NeoMutt will wait for a key only if the external command returned a non-zero status.


$weed#

Description:

Filter headers when displaying/forwarding/printing/replying

Type:

Boolean

Default:
set weed = yes

When set, NeoMutt will weed headers when displaying, forwarding, or replying to messages.


$wrap#

Description:

Width to wrap text in the pager

Type:

Number

Default:
set wrap = 0

When set to a positive value, NeoMutt will wrap text at $wrap characters. When set to a negative value, NeoMutt will wrap text so that there are $wrap characters of empty space on the right side of the terminal. Setting it to zero makes NeoMutt wrap at the terminal width.