This commit is contained in:
Dominic DiTaranto 2026-01-10 19:14:59 -05:00
parent 9bf1603b5b
commit 9dee194b09
3 changed files with 130 additions and 0 deletions

114
.config/mutt/colors Normal file
View file

@ -0,0 +1,114 @@
# Neonwolf Color Scheme for Mutt
# Based mostly on the colors from the badwolf lightline theme
# Project: https://codeberg.org/h3xx/mutt-colors-neonwolf
# custom body highlights -----------------------------------------------
# custom index highlights ----------------------------------------------
# for background in 16 color terminal, valid background colors include:
# base03, bg, black, any of the non brights
# style notes:
# when bg=235, that's a highlighted message
# normal bg=233
# basic colors ---------------------------------------------------------
color error color196 color235 # message line error text
color tilde color81 color233 # vi-like tildes marking blank lines
color message color82 color235
color markers brightcolor232 color222 # wrapped-line /^\+/ markers
color attachment brightcolor165 color235 # attachment headers
color search color232 color154 # search patterns in pager
color status brightcolor232 color39
color indicator brightcolor232 color154 # selected email in index
color tree brightcolor165 color233 # arrow in threads (`-->')
# basic monochrome screen
mono bold bold
mono underline underline
mono indicator reverse
mono error bold
mono header bold "^(From|Subject|Date|To|Cc|Bcc):"
mono quoted bold
# index ----------------------------------------------------------------
color index color160 color233 "~A" # all messages
color index color166 color233 "~E" # expired messages
color index brightcolor154 color233 "~N" # new messages
color index color154 color233 "~O" # old messages
color index color244 color233 "~R" # read messages
color index brightcolor39 color233 "~Q" # messages that have been replied to
color index brightcolor154 color233 "~U" # unread messages
color index brightcolor154 color233 "~U~$" # unread, unreferenced messages
color index color222 color233 "~v" # messages part of a collapsed thread
color index color222 color233 "~P" # messages from me
#color index color39 color233 "~p!~F" # messages to me
#color index color39 color233 "~N~p!~F" # new messages to me
#color index color39 color233 "~U~p!~F" # unread messages to me
#color index color244 color233 "~R~p!~F" # messages to me
color index brightcolor165 color233 "~F" # flagged messages
color index brightcolor165 color233 "~F~p" # flagged messages to me
color index brightcolor165 color233 "~N~F" # new flagged messages
color index brightcolor165 color233 "~N~F~p" # new flagged messages to me
color index brightcolor165 color233 "~U~F~p" # new flagged messages to me
color index color232 color196 "!~N ~D" # deleted messages
color index color232 color196 "~N ~D" # deleted new messages
color index color244 color233 "~v~(!~N)" # collapsed thread with no unread
color index color81 color233 "~v~(~N)" # collapsed thread with some unread
color index color81 color233 "~N~v~(~N)" # collapsed thread with unread parent
# statusbg used to indicated flagged when foreground color shows other status
# for collapsed thread
color index color160 color233 "~v~(~F)!~N" # collapsed thread with flagged, no unread
color index color81 color233 "~v~(~F~N)" # collapsed thread with some unread & flagged
color index color81 color233 "~N~v~(~F~N)" # collapsed thread with unread parent & flagged
color index color81 color233 "~N~v~(~F)" # collapsed thread with unread parent, no unread inside, but some flagged
color index color39 color233 "~v~(~p)" # collapsed thread with unread parent, no unread inside, some to me directly
color index color81 color160 "~v~(~D)" # thread with deleted (doesn't differentiate between all or partial)
color index color222 color233 "~T" # tagged messages
color index brightcolor222 color233 "~T~F" # tagged, flagged messages
color index brightcolor222 color233 "~T~N" # tagged, new messages
color index brightcolor222 color233 "~T~U" # tagged, unread messages
# message headers ------------------------------------------------------
color hdrdefault brightcolor222 color235
color header brightcolor39 color235 "^(From|To|Cc|Bcc)"
color header brightcolor165 color235 "^(Subject|Date)"
# body -----------------------------------------------------------------
color quoted color39 color235
color quoted1 color165 color235
color quoted2 color39 color235
color quoted3 color222 color235
color quoted4 color166 color235
color signature color81 color235 # everything below /^--\s*$/
color bold color255 color233
color underline color233 color244
color normal color244 color233
## pgp
color body color160 color233 "(BAD signature)"
color body color39 color233 "(Good signature)"
color body color235 color233 "^gpg: Good signature .*"
color body color241 color233 "^gpg: "
color body color241 color160 "^gpg: BAD signature from.*"
mono body bold "^gpg: Good signature"
mono body bold "^gpg: BAD signature from.*"
# yes, an insane URL regex
color body brightcolor39 color233 "([a-z][a-z0-9+-]*://(((([a-z0-9_.!~*'();:&=+$,-]|%[0-9a-f][0-9a-f])*@)?((([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?|[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)(:[0-9]+)?)|([a-z0-9_.!~*'()$,;:@&=+-]|%[0-9a-f][0-9a-f])+)(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?(#([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?|(www|ftp)\\.(([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?(:[0-9]+)?(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?(#([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?)[^].,:;!)? \t\r\n<>\"]"
# and a heavy handed email regex
color body brightcolor39 color233 "((@(([0-9a-z-]+\\.)*[0-9a-z-]+\\.?|#[0-9]+|\\[[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\]),)*@(([0-9a-z-]+\\.)*[0-9a-z-]+\\.?|#[0-9]+|\\[[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\]):)?[0-9a-z_.+%$-]+@(([0-9a-z-]+\\.)*[0-9a-z-]+\\.?|#[0-9]+|\\[[0-2]?[0-9]?[0-9]\\.[0-2]?[0-9]?[0-9]\\.[0-2]?[0-9]?[0-9]\\.[0-2]?[0-9]?[0-9]\\])"
# simplified regex for URL & email
#color body magenta default "(ftp|https?|gopher|news|telnet|finger)://[^ \"\t\r\n]+"
#color body magenta default "[-a-z_0-9.]+@[-a-z_0-9.]+"
# vi: ft=muttrc ts=4 sw=4 sts=4 et

10
.config/mutt/muttrc Normal file
View file

@ -0,0 +1,10 @@
# vim: filetype=neomuttrc
source /home/dominic/.config/mutt/colors
source /home/dominic/.config/mutt/settings
source /usr/local/share/mutt-wizard/mutt-wizard.muttrc
source /home/dominic/.config/mutt/accounts/me@domdit.com.muttrc
macro index,pager i1 '<sync-mailbox><enter-command>source /home/dominic/.config/mutt/accounts/me@domdit.com.muttrc<enter><change-folder>!<enter>;<check-stats>' "switch to me@domdit.com"
set header_cache_backend = "lmdb"
set editor = "nvim"

6
.config/mutt/settings Normal file
View file

@ -0,0 +1,6 @@
macro index A \
"<tag-pattern>~N<enter><tag-prefix><clear-flag>N<untag-pattern>.<enter>" \
"mark all new as read"
bind index,pager e sidebar-toggle-visible