Under Development
stars

Core Commands

Core Commands#

Commands for configuration, scripting, and general NeoMutt control.

:cd#

Change NeoMutt’s current working directory.

  • cd <directory> β€” change to a specific directory

  • cd β€” change to the home directory

cd ~/Mail
cd /tmp
cd

:echo#

Print a message to the status line. Useful for debugging config files.

  • echo <message> β€” display a message string

echo "NeoMutt config loaded successfully"
echo "Current editor: $editor"

:finish#

Stop reading the current config file. Useful inside ifdef/ifndef blocks to skip the rest of a conditionally-sourced file.

ifndef imap 'finish'

:ifdef#

Conditionally run a config command if a symbol (variable, feature, command) is defined.

  • ifdef <symbol> '<command>' β€” run a command if the symbol exists

ifdef imap   'source ~/.config/neomutt/imap.rc'
ifdef sidebar 'source ~/.config/neomutt/sidebar.rc'
ifdef notmuch 'source ~/.config/neomutt/notmuch.rc'

:ifndef#

Conditionally run a command if a symbol is not defined.

  • ifndef <symbol> '<command>' β€” run a command if the symbol is missing

ifndef sidebar 'echo "Sidebar support is not available"'
ifndef imap    'set spoolfile = ~/Mail/INBOX'

:source#

Read and execute commands from an external config file.

  • source <filename> β€” execute a config file

  • source <file1> <file2> β€” execute multiple files in order

source ~/.config/neomutt/colors.rc
source ~/.config/neomutt/hooks.rc ~/.config/neomutt/keys.rc
source "gpg --quiet --decrypt ~/.config/neomutt/passwords.gpg|"

:version#

Show NeoMutt version and build information in the pager.

version