From 22bafa21869fb47d8f6568a0e047c226926f20e0 Mon Sep 17 00:00:00 2001 From: Yigit Sever Date: Tue, 12 Oct 2021 01:01:01 +0300 Subject: mutt: free from the shackles --- .config/mutt/muttrc | 177 +++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 155 insertions(+), 22 deletions(-) (limited to '.config/mutt/muttrc') diff --git a/.config/mutt/muttrc b/.config/mutt/muttrc index 6bb2b11..55762c0 100644 --- a/.config/mutt/muttrc +++ b/.config/mutt/muttrc @@ -1,15 +1,160 @@ # vim: filetype=neomuttrc -source /usr/local/share/mutt-wizard/mutt-wizard.muttrc # mw-autogenerated -source /home/yigit/.config/mutt/accounts/1-ceng_argor.muttrc # mw-autogenerated -macro index,pager i1 'source /home/yigit/.config/mutt/accounts/1-ceng_argor.muttrc!;' "switch to yigit@ceng.metu.edu.tr" # mw-autogenerated -macro index,pager i2 'source /home/yigit/.config/mutt/accounts/2-metu_argor.muttrc!;' "switch to ysever@metu.edu.tr" # mw-autogenerated -macro index,pager i3 'source /home/yigit/.config/mutt/accounts/3-ceng_stu.muttrc!;' "switch to e2482057@ceng.metu.edu.tr" # mw-autogenerated -macro index,pager i4 'source /home/yigit/.config/mutt/accounts/4-metu_stu.muttrc!;' "switch to e248205@metu.edu.tr" # mw-autogenerated -macro index,pager i5 'source /home/yigit/.config/mutt/accounts/5-xyz.muttrc!;' "switch to yigit@yigitsever.com" # mw-autogenerated +############ +# stolen # +############ +set mailcap_path = /home/yigit/.config/mutt/mailcap +set date_format="%y/%m/%d %I:%M%p" +set smtp_authenticators = 'gssapi:login' +set rfc2047_parameters = yes +set mark_old = no # Unread mail stay unread until read +set mime_forward = yes # attachments are forwarded with mail +set fast_reply # skip to compose when replying +set fcc_attach # save attachments with the body +set forward_format = "Fwd: %s" # format of subject when forwarding +set forward_quote # include message in forwards +set reverse_name # reply as whomever it was to +set mail_check=60 # to avoid lags using IMAP with some email providers (yahoo for example) +auto_view text/html # automatically show html (mailcap uses w3m) +auto_view application/pgp-encrypted +alternative_order text/plain text/enriched text/html +bind index,pager i noop +bind index,pager g noop +bind index \Cf noop + +# General rebindings +bind index j next-entry +bind index k previous-entry +bind attach view-mailcap +bind attach l view-mailcap +bind editor noop +bind index G last-entry +bind index gg first-entry +bind pager,attach h exit +bind pager j next-line +bind pager k previous-line +bind pager l view-attachments +bind index D delete-message +bind index U undelete-message +bind index L limit +bind index h noop +bind index l display-message +bind index,query tag-entry +macro browser h '..' "Go to parent folder" +bind index,pager H view-raw-message +bind browser l select-entry +bind pager,browser gg top-page +bind pager,browser G bottom-page +bind index,pager,browser d half-down +bind index,pager,browser u half-up +bind index,pager S sync-mailbox +bind index,pager R group-reply +bind index \031 previous-undeleted # Mouse wheel +bind index \005 next-undeleted # Mouse wheel +bind pager \031 previous-line # Mouse wheel +bind pager \005 next-line # Mouse wheel +bind editor complete-query + +macro index \Cr "T~UN." "mark all messages as read" +macro index O "mbsync -a" "run mbsync to sync all mail" +macro index \Cf "unset wait_keyread -p 'Enter a search term to find with notmuch: ' x; echo \$x >~/.cache/mutt_terms~i \"\`notmuch search --output=messages \$(cat ~/.cache/mutt_terms) | head -n 600 | perl -le '@a=<>;s/\^id:// for@a;$,=\"|\";print@a' | perl -le '@a=<>; chomp@a; s/\\+/\\\\+/ for@a;print@a' \`\"" "show only messages matching a notmuch pattern" +macro index a "all\n" "show all messages (undo limit)" + +# Sidebar mappings +set sidebar_visible = yes +set sidebar_width = 20 +set sidebar_short_path = yes +set sidebar_next_new_wrap = yes +set mail_check_stats +bind index,pager \Ck sidebar-prev +bind index,pager \Cj sidebar-next +bind index,pager \Co sidebar-open +bind index,pager \Cp sidebar-prev-new +bind index,pager \Cn sidebar-next-new +bind index,pager B sidebar-toggle-visible + +# Default index colors: +color index yellow default '.*' +color index_author red default '.*' +color index_number blue default +color index_subject cyan default '.*' + +# New mail is boldened: +color index brightyellow black "~N" +color index_author brightred black "~N" +color index_subject brightcyan black "~N" + +# Tagged mail is highlighted: +color index brightyellow blue "~T" +color index_author brightred blue "~T" +color index_subject brightcyan blue "~T" + +# Other colors and aesthetic settings: +mono bold bold +mono underline underline +mono indicator reverse +mono error bold +color normal default default +color indicator brightblack white +color sidebar_highlight red default +color sidebar_divider brightblack black +color sidebar_flagged red black +color sidebar_new green black +color normal brightyellow default +color error red default +color tilde black default +color message cyan default +color markers red white +color attachment white default +color search brightmagenta default +color status brightyellow black +color hdrdefault brightgreen default +color quoted green default +color quoted1 blue default +color quoted2 cyan default +color quoted3 yellow default +color quoted4 red default +color quoted5 brightred default +color signature brightgreen default +color bold black default +color underline black default +color normal default default + +# Regex highlighting: +color header blue default ".*" +color header brightmagenta default "^(From)" +color header brightcyan default "^(Subject)" +color header brightwhite default "^(CC|BCC)" +color body brightred default "[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+" # Email addresses +color body brightblue default "(https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+" # URL +color body green default "\`[^\`]*\`" # Green text between ` and ` +color body brightblue default "^# \.*" # Headings as bold blue +color body brightcyan default "^## \.*" # Subheadings as bold cyan +color body brightgreen default "^### \.*" # Subsubheadings as bold green +color body yellow default "^(\t| )*(-|\\*) \.*" # List items as yellow +color body brightcyan default "[;:][-o][)/(|]" # emoticons +color body brightcyan default "[;:][)(|]" # emoticons +color body brightcyan default "[ ][*][^*]*[*][ ]?" # more emoticon? +color body brightcyan default "[ ]?[*][^*]*[*][ ]" # more emoticon? +color body red default "(BAD signature)" +color body cyan default "(Good signature)" +color body brightblack default "^gpg: Good signature .*" +color body brightyellow default "^gpg: " +color body brightyellow red "^gpg: BAD signature from.*" +mono body bold "^gpg: Good signature" +mono body bold "^gpg: BAD signature from.*" +color body red default "([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<>\"]" bind generic z noop bind generic Z noop +source /home/yigit/.config/mutt/accounts/1-ceng_argor.muttrc +macro index,pager i1 'source /home/yigit/.config/mutt/accounts/1-ceng_argor.muttrc!;' "switch to yigit@ceng.metu.edu.tr" +macro index,pager i2 'source /home/yigit/.config/mutt/accounts/2-metu_argor.muttrc!;' "switch to ysever@metu.edu.tr" +macro index,pager i3 'source /home/yigit/.config/mutt/accounts/3-ceng_stu.muttrc!;' "switch to e2482057@ceng.metu.edu.tr" +macro index,pager i4 'source /home/yigit/.config/mutt/accounts/4-metu_stu.muttrc!;' "switch to e248205@metu.edu.tr" +macro index,pager i5 'source /home/yigit/.config/mutt/accounts/5-xyz.muttrc!;' "switch to yigit@yigitsever.com" + +# to set vim autocommands set tmpdir="/tmp/neomutt" # character set for outgoing messages @@ -64,20 +209,12 @@ set sleep_time=0 set abort_nosubject=no set abort_unmodified=no -# # Cache message headers here. This takes very little space and makes opening large folders much faster. -# # See header-caching -# # Big conf file does this for us, ~y -# set header_cache=~/.config/mutt/cache/headers/ - -# # Make things faster at the cost of a negligible amount of disk space. -# # See . -# # Big conf file does this for us -# set message_cachedir=~/.config/mutt/cache/ - # TODO: maybe check out . set query_command="khard email --parsable '%s'" # The editor menu is "command-line mode", i.e., what you when hitting colon. # See . +unset query_command +# TODO: and we are immediately unsetting it, dunno why <12-10-21, yigit> # # When a message contains both plain text and HTML, prefer viewing plain text. alternative_order text/plain text/html @@ -87,8 +224,8 @@ bind editor complete-query # The format string reduces the amount of information compared to the default and doesn't use hyphens for padding. # See . # set status_format="%f%?V?/%V? [%m%?M?, %M shown?%?n?, %n new?%?o?, %o old?%?d?, %d deleted?%?F?, %F flagged?%?t?, %t tagged?%?p?, %p postponed?] %> %P" -# set index_format="hi" set index_format="%2C %Z %?X?A& ? %[%e %b %y %R] %-15.15F %s (%-4.4c)" +set sidebar_format = "%D%?F? [%F]?%* %?N?%N/? %?S?%S?" # See ). # Also get rid of the hyphens again. @@ -106,8 +243,6 @@ set crypt_opportunistic_encrypt = no set pgp_self_encrypt = yes set pgp_default_key = 198466C2F5664940F73A1715B87B63C533C38A88 -unset query_command - macro index,pager A \ "khard add-email" \ "add the sender email address to khard" @@ -145,5 +280,3 @@ color index_flags color239 default "EDAS" color index_subject color239 default "~f @igi-global.com" color index_author color239 default "~f @igi-global.com" color index_flags color239 default "~f @igi-global.com" - -set sidebar_format = "%D%?F? [%F]?%* %?N?%N/? %?S?%S?" -- cgit v1.2.3-70-g09d2