mutt: Update neomutt configuration
Changed some colors, some keymaps and made it more flexible for new mail account setups. Also removed most of the static gmail-related account stuff since I don't need this in my public repo.
This commit is contained in:
parent
48ed4818f2
commit
78987c493e
9 changed files with 36 additions and 97 deletions
|
@ -1,68 +1,12 @@
|
||||||
# documentation: https://wiki.archlinux.org/index.php/isync
|
# documentation: https://wiki.archlinux.org/index.php/isync
|
||||||
|
|
||||||
IMAPAccount gmail
|
|
||||||
# Address to connect to
|
|
||||||
Host imap.gmail.com
|
|
||||||
UserCmd "pass show misc/gmail-app-password | grep username | cut -d: -f2"
|
|
||||||
PassCmd "pass show misc/gmail-app-password | head -n1"
|
|
||||||
# To store the password in an encrypted file use PassCmd instead of Pass
|
|
||||||
# PassCmd "gpg2 -q --for-your-eyes-only --no-tty -d ~/.mailpass.gpg"
|
|
||||||
#
|
|
||||||
# Use SSL
|
|
||||||
TLSType IMAPS
|
TLSType IMAPS
|
||||||
CertificateFile /etc/ssl/certs/ca-certificates.crt
|
|
||||||
# Throttle simultaneous access to make google happy
|
|
||||||
PipelineDepth 60
|
|
||||||
|
|
||||||
IMAPStore gmail-remote
|
|
||||||
Account gmail
|
|
||||||
|
|
||||||
MaildirStore mail-local
|
|
||||||
Subfolders Verbatim
|
|
||||||
# The trailing "/" is important
|
|
||||||
Path ~/documents/mail/
|
Path ~/documents/mail/
|
||||||
Inbox ~/documents/mail/Inbox
|
Inbox ~/documents/mail/Inbox
|
||||||
# define generous maximum size to store locally
|
SubFolders Verbatim
|
||||||
MaxSize 50M
|
MaxSize 50M
|
||||||
|
|
||||||
Channel gmail-inbox
|
|
||||||
Far :gmail-remote:INBOX
|
|
||||||
Near :mail-local:inbox
|
|
||||||
# Exclude everything under the internal [Gmail] folder, except the interesting folders
|
|
||||||
# Automatically create missing mailboxes, both locally and on the server
|
|
||||||
Create Near
|
|
||||||
# Save the synchronization state files in the relevant directory
|
|
||||||
SyncState *
|
SyncState *
|
||||||
|
|
||||||
Channel gmail-sent
|
|
||||||
Far :gmail-remote:"[Google Mail]/Sent Mail"
|
|
||||||
Near :mail-local:sent
|
|
||||||
Create Near
|
|
||||||
|
|
||||||
Channel gmail-trash
|
|
||||||
Far :gmail-remote:"[Google Mail]/Trash"
|
|
||||||
Near :mail-local:trash
|
|
||||||
Create Near
|
|
||||||
|
|
||||||
Channel gmail-important
|
|
||||||
Far :gmail-remote:"[Google Mail]/Starred"
|
|
||||||
Near :mail-local:important
|
|
||||||
Create Near
|
|
||||||
|
|
||||||
Channel gmail-drafts
|
|
||||||
Far :gmail-remote:"[Google Mail]/Drafts"
|
|
||||||
Near :mail-local:drafts
|
|
||||||
Create Near
|
|
||||||
|
|
||||||
Channel gmail-all
|
|
||||||
Far :gmail-remote:"[Google Mail]/All Mail"
|
|
||||||
Near :mail-local:archive
|
|
||||||
Create Near
|
|
||||||
|
|
||||||
# Put all the channels into one group
|
|
||||||
Group googlemail
|
|
||||||
Channel gmail-inbox
|
|
||||||
Channel gmail-important
|
|
||||||
Channel gmail-sent
|
|
||||||
Channel gmail-trash
|
|
||||||
Channel gmail-all
|
|
||||||
|
|
|
@ -2,17 +2,17 @@
|
||||||
defaults
|
defaults
|
||||||
auth on
|
auth on
|
||||||
tls on
|
tls on
|
||||||
|
# disable starttls to use whole connection through ssl
|
||||||
|
tls_starttls off
|
||||||
tls_trust_file /etc/ssl/certs/ca-certificates.crt
|
tls_trust_file /etc/ssl/certs/ca-certificates.crt
|
||||||
# logfile ~/.msmtp.log
|
# logfile ~/.msmtp.log
|
||||||
|
|
||||||
# Gmail
|
# Gmail
|
||||||
account personal-gmail
|
account personal-gmail
|
||||||
|
tls_starttls on
|
||||||
host smtp.gmail.com
|
host smtp.gmail.com
|
||||||
port 587
|
port 587
|
||||||
from marty.oehme@gmail.com
|
from marty.oehme@gmail.com
|
||||||
user marty.oehme@gmail.com
|
|
||||||
# password plain-text-password-goes-here
|
|
||||||
passwordeval "pass show misc/gmail-app-password | head -n1"
|
passwordeval "pass show misc/gmail-app-password | head -n1"
|
||||||
|
|
||||||
# Set a default account
|
# Set a default account
|
||||||
account default : personal-gmail
|
|
||||||
|
|
|
@ -2,15 +2,14 @@
|
||||||
# local maildir settings
|
# local maildir settings
|
||||||
set mbox_type = Maildir
|
set mbox_type = Maildir
|
||||||
set folder = ~/documents/mail # This has the shortcut '+' or '='
|
set folder = ~/documents/mail # This has the shortcut '+' or '='
|
||||||
set spoolfile = "+inbox" # This has the shortcut '!'
|
set spoolfile = "+Inbox" # This has the shortcut '!'
|
||||||
set postponed = "+drafts"
|
set postponed = "+Drafts"
|
||||||
set trash = "+trash"
|
set record = "+Sent"
|
||||||
# Disable saving outgoing mail since Gmail saves them by default.
|
set trash = "+Trash"
|
||||||
unset record
|
|
||||||
mailboxes ! \
|
mailboxes ! \
|
||||||
"+important" \
|
"+Sent" \
|
||||||
"+sent" \
|
"+Drafts" \
|
||||||
"+drafts" \
|
"+Trash" \
|
||||||
"+trash" \
|
"+Archive" \
|
||||||
"+archive"
|
"+Junk"
|
||||||
|
|
||||||
|
|
|
@ -62,8 +62,8 @@ color index_number blue default
|
||||||
color index_subject cyan default '.*'
|
color index_subject cyan default '.*'
|
||||||
|
|
||||||
# For new mail:
|
# For new mail:
|
||||||
color index brightyellow black "~N"
|
color index brightyellow brightblack "~N"
|
||||||
color index_author brightred black "~N"
|
color index_author brightred brightblack "~N"
|
||||||
color index_subject brightcyan black "~N"
|
color index_subject brightcyan black "~N"
|
||||||
|
|
||||||
color progress black cyan
|
color progress black cyan
|
||||||
|
@ -155,7 +155,7 @@ color attachment color8 default
|
||||||
color signature color8 default
|
color signature color8 default
|
||||||
|
|
||||||
# emails
|
# emails
|
||||||
# color body color14 default '[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+'
|
color body color14 default '[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+'
|
||||||
|
|
||||||
# hide "mailto"
|
# hide "mailto"
|
||||||
color body color0 color0 '<mailto:[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+>'
|
color body color0 color0 '<mailto:[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+>'
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
# open html emails in browser (or whatever GUI program is used to render HTML)
|
# open html emails in browser (or whatever GUI program is used to render HTML)
|
||||||
text/html; xdg-open %s ; nametemplate=%s.html
|
text/html; open %s ; nametemplate=%s.html
|
||||||
# render html emails inline using magic (uncomment the line below to use lynx instead)
|
# render html emails inline using magic (uncomment the line below to use lynx instead)
|
||||||
# text/html; lynx -assume_charset=%{charset} -display_charset=utf-8 -collapse_br_tags -dump %s; nametemplate=%s.html; copiousoutput
|
# text/html; lynx -assume_charset=%{charset} -display_charset=utf-8 -collapse_br_tags -dump %s; nametemplate=%s.html; copiousoutput
|
||||||
text/html; render-prettyhtml %s; nametemplate=%s.html; copiousoutput;
|
text/html; render-prettyhtml %s; nametemplate=%s.html; copiousoutput;
|
||||||
|
@ -20,9 +20,9 @@ video/*; setsid mpv --quiet %s &; copiousoutput
|
||||||
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; sc-im %s; needsterminal
|
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; sc-im %s; needsterminal
|
||||||
|
|
||||||
# open anything else externally
|
# open anything else externally
|
||||||
application/pdf; xdg-open %s;
|
application/pdf; open %s;
|
||||||
|
|
||||||
application/*; mkdir -p /tmp/mutt \; cp %s /tmp/mutt \; xdg-open /tmp/mutt/$(basename %s) &
|
application/*; mkdir -p /tmp/mutt \; cp %s /tmp/mutt \; open /tmp/mutt/$(basename %s) &
|
||||||
application/pgp-encrypted; gpg -d '%s'; copiousoutput;
|
application/pgp-encrypted; gpg -d '%s'; copiousoutput;
|
||||||
application/pgp-keys; gpg --import '%s'; copiousoutput;
|
application/pgp-keys; gpg --import '%s'; copiousoutput;
|
||||||
|
|
||||||
|
|
|
@ -5,6 +5,10 @@ bind index,pager g noop # don't send group-replies with g
|
||||||
bind index gg first-entry
|
bind index gg first-entry
|
||||||
bind index G last-entry
|
bind index G last-entry
|
||||||
bind index <space> collapse-thread
|
bind index <space> collapse-thread
|
||||||
|
macro index J <tag-entry> "tag current and select next entry"
|
||||||
|
macro index K <tag-entry><previous-undeleted><previous-undeleted> "tag current and select previous entry"
|
||||||
|
macro index t <tag-entry><previous-undeleted> "tag current entry"
|
||||||
|
|
||||||
|
|
||||||
# view manipulation
|
# view manipulation
|
||||||
bind attach,browser,index,pager \CF next-page
|
bind attach,browser,index,pager \CF next-page
|
||||||
|
@ -44,12 +48,12 @@ macro index,pager ,a \
|
||||||
"add the sender email address to khard"
|
"add the sender email address to khard"
|
||||||
|
|
||||||
# mailbox navigation
|
# mailbox navigation
|
||||||
macro index,pager gi "<change-folder>=inbox<enter>" "go to inbox"
|
macro index,pager gi "<change-folder>=Inbox<enter>" "go to inbox"
|
||||||
macro index,pager gm "<change-folder>=important<enter>" "go to important"
|
macro index,pager gs "<change-folder>=Sent<enter>" "go to sent"
|
||||||
macro index,pager gs "<change-folder>=sent<enter>" "go to sent"
|
macro index,pager gd "<change-folder>=Drafts<enter>" "go to drafts"
|
||||||
macro index,pager gd "<change-folder>=drafts<enter>" "go to drafts"
|
macro index,pager gt "<change-folder>=Trash<enter>" "go to trash"
|
||||||
macro index,pager gt "<change-folder>=trash<enter>" "go to trash"
|
macro index,pager ga "<change-folder>=Archive<enter>" "go to archive"
|
||||||
macro index,pager ga "<change-folder>=archive<enter>" "go to archive"
|
macro index,pager gj "<change-folder>=Junk<enter>" "go to junk"
|
||||||
# sidebar navigation
|
# sidebar navigation
|
||||||
bind index,pager B sidebar-toggle-visible
|
bind index,pager B sidebar-toggle-visible
|
||||||
bind index,pager <down> sidebar-next
|
bind index,pager <down> sidebar-next
|
||||||
|
@ -66,8 +70,7 @@ bind pager k previous-line
|
||||||
bind pager j next-line
|
bind pager j next-line
|
||||||
bind pager gg top
|
bind pager gg top
|
||||||
bind pager G bottom
|
bind pager G bottom
|
||||||
# compose postpone
|
|
||||||
bind compose p postpone-message
|
|
||||||
# markdown to html for composition
|
# markdown to html for composition
|
||||||
macro compose ,m "F pandoc -s -f markdown -t html \ny^T^Utext/html; charset=UTF-8\n" "Convert from MD to HTML"
|
macro compose ,m "F pandoc -s -f markdown -t html \ny^T^Utext/html; charset=UTF-8\n" "Convert from MD to HTML"
|
||||||
|
|
||||||
|
@ -79,9 +82,7 @@ bind index,pager ro reply
|
||||||
macro index,pager \CU "<enter-command> unset pipe_decode<enter><pipe-message>extract_url | fzf | clip<enter>" "get URLs"
|
macro index,pager \CU "<enter-command> unset pipe_decode<enter><pipe-message>extract_url | fzf | clip<enter>" "get URLs"
|
||||||
|
|
||||||
# Refresh far imap email
|
# Refresh far imap email
|
||||||
macro index O "<sync-mailbox><shell-escape>export MBSYNC_PRE=true; sync-mail<enter><sync-mailbox>" "refresh all e-mail"
|
macro index O "<sync-mailbox><shell-escape>export MBSYNC_PRE=true; sync-mail<enter>" "refresh all e-mail"
|
||||||
macro index o "<sync-mailbox><shell-escape>export MBSYNC_PRE=true; sync-mail gmail-inbox<enter><sync-mailbox>" "refresh inbox e-mail"
|
|
||||||
|
|
||||||
|
|
||||||
# Send mail to taskwarrior
|
# Send mail to taskwarrior
|
||||||
macro index,pager ,T "<pipe-message>mutt2task -c -d -t<enter>" "add mail as task to taskwarrior with custom description and tags"
|
macro index,pager ,T "<pipe-message>mutt2task -c -d -t<enter>" "add mail as task to taskwarrior with custom description and tags"
|
||||||
|
|
2
office/.config/neomutt/profile.gmail
Normal file
2
office/.config/neomutt/profile.gmail
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
color status color3 black '(\` )' # bubble account variation
|
||||||
|
macro generic <F4> ":source ~/.config/neomutt/profile.private<enter>"
|
2
office/.config/neomutt/profile.private
Normal file
2
office/.config/neomutt/profile.private
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
color status color69 black '(\` )' # bubble account variation
|
||||||
|
macro generic <F4> ":source ~/.config/neomutt/profile.gmail<enter>"
|
|
@ -1,12 +1,3 @@
|
||||||
# Identity
|
|
||||||
#
|
|
||||||
set realname = "Marty Oehme"
|
|
||||||
set from = "marty.oehme@gmail.com"
|
|
||||||
# # If you have another address:
|
|
||||||
# alternates "^neomutt@example\.com$"
|
|
||||||
# # Or, if you use the entire domain:
|
|
||||||
# alternates "@example\.com$"
|
|
||||||
# set reverse_name
|
|
||||||
|
|
||||||
set mail_check = 60
|
set mail_check = 60
|
||||||
set mail_check_stats
|
set mail_check_stats
|
||||||
|
@ -52,7 +43,7 @@ set fcc_attach # attachments saved with body
|
||||||
# set editor = "vim"
|
# set editor = "vim"
|
||||||
set mime_type_query_command = "xdg-mime query filetype"
|
set mime_type_query_command = "xdg-mime query filetype"
|
||||||
# send settings
|
# send settings
|
||||||
set sendmail = "/usr/bin/msmtp -a personal-gmail"
|
set sendmail = "/usr/bin/msmtp"
|
||||||
set sendmail_wait = 0
|
set sendmail_wait = 0
|
||||||
|
|
||||||
# Display Settings
|
# Display Settings
|
||||||
|
|
Loading…
Reference in a new issue