Asciiville

ASCII Art, Animation, and Utilities


Project maintained by doctorfree Hosted on GitHub Pages — Theme by ronrecord

NeoMutt

Table of Contents

  1. NeoMutt encrypted passwords
  2. NeoMutt Key Bindings
  3. Replacing an existing NeoMutt configuration

NeoMutt encrypted passwords

To use an encrypted password with NeoMutt, follow the guide at: https://www.xmodulo.com/mutt-email-client-encrypted-passwords.html The ArchLinux wiki has a good article on configuring GPG to encrypt/decrypt passwords and email. See https://wiki.archlinux.org/title/GnuPG

For example, if you have encrypted your Google NeoMutt App password in the file ~/.neomutt/gmail.gpg then the following can be used for GMail authentication in $HOME/.config/neomutt/accounts/gmail

Create a GPG key pair

gpg --gen-key

Create a file containing the encrypted password:

echo "your_gmail_app_password" > ~/.config/neomutt/gmail
gpg -r youremail@gmail.com -e ~/.config/neomutt/gmail
rm -f ~/.config/neomutt/gmail
chmod 600 ~/.config/neomutt/gmail.gpg

Configure NeoMutt authentication in $HOME/.config/neomutt/accounts/gmail

set imap_pass="`gpg --batch -q --decrypt ~/.neomutt/gmail.gpg`"

The first time neomutt is executed it will prompt you for the passphrase used to create the GPG key pair. If you check the box to use the GPG passphrase manager then subsequent invocations of NeoMutt will not prompt for the passphrase. This assumes the gpg-agent has been installed and configured. Many modern Linux distributions do this by default.

Creating and using encrypted passwords is strongly recommended. That’s why I spent the time to write this section of the README. A similar procedure can be used with Mutt.

To transfer a previously generated GnuPG key pair from another system, see https://gist.github.com/angela-d/8b27670bac26e4bf7c431715fef5cc51

NeoMutt Key Bindings

The Asciiville NeoMutt configuration includes some custom key bindings to ease NeoMutt navigation. These are documented in /usr/share/asciiville/neomutt/cheatsheet.md.

The primary differences between the Asciiville NeoMutt key bindings and the default are as follows:

The customized Asciiville NeoMutt key bindings are as follows:

Index

Function Keybind
Go to last entry G
Go to first entry gg
Page down d
Page up u
Delete message D
Delete thread Ctrl+d
Mark thread read Ctrl+r
Undelete message U
Limit/Filter L
Open message l, Enter
Group reply R
Reply r
Forward message f
New message m
View attachments v
Compose to Sender @
Resend message Esc+e
Save message (to file) s
Toggle collapse thread Space, Esc+v
Toggle collapse all threads Esc+V
Add contact to Khard A
Jump to parent message P
Email PGP public key Esc+k

Pager

Function Keybind
Bottom of page G
Top of page gg
Next line j
Previous line k
View attachments l
Page down d
Page up u
Group reply R,g
Reply r
Compose to Sender @
Delete thread Ctrl+d
Mark thread read Ctrl+r
Mark thread new N
Function Keybind
Show sidebar B
Up Ctrl+k
Down Ctrl+j
Open Ctrl+o
Open next new Ctrl+n
Open previous new Ctrl+p

Replacing an existing NeoMutt configuration

Asciiville ascinit skips NeoMutt initialization and configuration if it detects an existing $HOME/.config/neomutt/ folder. If you have already configured NeoMutt then ascinit does not touch the existing configuration. However, you may want to examine the NeoMutt configuration provided in Asciiville by viewing the files in /usr/share/asciiville/neomutt/. If you want to use the Asciiville NeoMutt setup files rather than your previously configured setup, move the existing $HOME/.config/neomutt/ folder aside and rerun ascinit.