muttrc (7592B)
1 # vim: filetype=neomuttrc foldmethod=marker 2 source `{ [ -f ~/.config/dark-theme ] && printf "colors-dark"; } || printf "colors-light";` 3 4 # Don't ask to press key on shell commands 5 set wait_key = no 6 7 # Don't move to next message when modifying -- it would break notmuch macros 8 set resolve = no 9 10 set mbox_type = Maildir 11 set mail_check=0 # don't want to automatically check new mail (handled by mbsync) 12 unset mark_old # it's enough to see whats unread 13 set mailcap_path = ~/.config/mailcap 14 15 # PGP options 16 set pgp_default_key = 0x67A9DD9A68AE0B7C 17 set crypt_autosign 18 set crypt_verify_sig 19 set crypt_replysign 20 set crypt_opportunistic_encrypt 21 set pgp_self_encrypt 22 set postpone_encrypt 23 24 # We want weed 25 set weed 26 # (weed headers when displaying, forwarding, printing, or replying) 27 28 set delete # don't ask, just do 29 unset confirmappend # don't ask, just do! 30 set quit # don't ask, just do!! 31 auto_view text/* 32 33 # Abort when I forget an attachment 34 set abort_noattach = yes 35 set abort_noattach_regex = "attach|attached|attachments?" 36 37 # For key bindings, do :exec what-key 38 39 # Sidebar 40 set sidebar_visible = yes 41 set sidebar_width = 20 42 set sidebar_short_path = yes 43 set sidebar_next_new_wrap = yes 44 set mail_check_stats 45 set sidebar_format = '%D%?F? [%F]?%* %?N?%N/? %?S?%S?' 46 bind index,pager \Cp sidebar-prev 47 bind index,pager \Cn sidebar-next 48 bind index,pager \Cl sidebar-open 49 bind index,pager B sidebar-toggle-visible 50 bind index,browser t tag-entry 51 52 # Switch ; and : keys 53 unbind generic,pager : 54 unbind generic,pager ; 55 bind generic,compose,attach \Cl refresh 56 bind generic,pager \; enter-command 57 bind generic : tag-prefix 58 59 set date_format = "%d/%m" 60 61 set index_format="%2C %Z %?X?A& ? %?[1y?%[%b %d %H:%M]&%[%F %H:%M]? %-15.15F %s (%-4.4c) %> [%g]" 62 set pager_format="-%Z- %C/%m: %-20.20n %-20.40A %?[1y?%[%b %d %H:%M]&%[%F %H:%M]? %s%* -- (%P)" 63 # this is: 64 # current message number (width 2) 65 # message status flags 66 # if (num_mime_attachments != 0) ("A") (" ") 67 # if (message_date within 1y) (abbrev_month, day of month) (ISO format) 68 # author/recipient name (left aligned, width 15 chars, max 15 chars) 69 # subject 70 # num characters in body (left aligned, width 4 chars, max 4 chars) 71 # align right 72 # message tags 73 # conditionals are: %?condition?if non-zero&else? 74 75 # Github issue was fixed, yay! 76 # Threads should be sorted by date, top-to-botom. 77 # Newest top-level messages should appear at the top. 78 set use_threads = yes 79 set sort = reverse-last-date-received 80 set sort_aux = date-received 81 82 # there's an issue with sorting where messages in threads should be sorted by date, top-to-bottom. 83 # but at the moment it's a "wontfix". hopefully that changes soon. 84 # https://github.com/neomutt/neomutt/issues/2342, 85 set uncollapse_jump # don't collapse on an unread message 86 set sort_re # thread based also on regex 87 set reply_regex = "^(([Rr][Ee]?(\[[0-9]+\])?: *)?(\[[^]]+\] *)?)*" 88 89 # Pager 90 set pager_index_lines = 10 # number of index lines to show 91 set pager_context = 3 # number of context lines to show 92 set pager_stop # don't go to next message automatically 93 set menu_scroll # scroll in menus 94 set tilde # show tildes like in vim 95 unset markers # no ugly plus signs 96 set quote_regex = "^( {0,4}[>|:#%]| {0,4}[a-z0-9]+[>|]+)+" 97 alternative_order text/plain text/enriched text/html 98 99 bind pager k previous-line 100 bind pager j next-line 101 bind pager J next-entry 102 bind pager K previous-entry 103 bind pager g noop 104 bind pager gg top 105 bind pager G bottom 106 107 macro index ZY "<enter-command>set use_threads=yes<Enter>" 108 macro index ZN "<enter-command>set use_threads=no<Enter>" 109 110 # Composing 111 set edit_headers # show headers when composing 112 set fast_reply # skip to compose when replying 113 set fcc_attach # save attachments with the body 114 set mime_forward = no # forwarded message is sent as part of body 115 set forward_format = "Fwd: %s" # format of subject when forwarding 116 set forward_decode # decode when forwarding 117 set attribution = "On %d, %n wrote:" # format of quoting header 118 set reply_to # reply to Reply to: field 119 unset reverse_name # always use my name & email instead of whatever was in the To: header 120 set include # include message in replies 121 set forward_quote # include message in forwards 122 set attach_format = "%u%D%I %t%4n %T%.40d (%.40F -> %.40f)%> [%.7m/%.10M, %.6e%?C?, %C?, %s]" 123 124 # General mappings 125 macro index,pager S '<sync-mailbox><shell-escape>notmuch-hook<enter>' 126 bind index,pager | pipe-message 127 bind index,pager s save-message 128 bind index,pager m mail 129 bind compose p postpone-message 130 bind compose l view-attach 131 bind compose h exit 132 bind compose L edit-language 133 bind index p recall-message 134 bind index g noop 135 bind index gg first-entry 136 bind index G last-entry 137 bind index,pager R group-reply 138 bind index,pager r reply 139 bind index <space> collapse-thread 140 bind generic,index j next-entry 141 bind generic,index k previous-entry 142 bind index ! shell-escape 143 bind attach <return> view-mailcap 144 bind attach l view-mailcap 145 bind compose \Cr rename-attachment 146 bind compose d edit-description 147 bind editor <space> noop 148 bind index G last-entry 149 bind index gg first-entry 150 bind pager,attach h exit 151 bind pager l view-attachments 152 bind index L limit 153 bind index h noop 154 bind index l display-message 155 macro browser h '<change-dir><kill-line>..<enter>' "Go to parent folder" 156 bind index,pager H view-raw-message 157 bind browser l select-entry 158 bind pager,browser gg top-page 159 bind pager,browser G bottom-page 160 bind index,pager,browser \Cd half-down 161 bind index,pager,browser \Cu half-up 162 bind pager <space> half-down 163 bind pager \C? half-up # backspace key 164 bind index \031 previous-undeleted # Mouse wheel 165 bind index \005 next-undeleted # Mouse wheel 166 bind pager \031 previous-line # Mouse wheel 167 bind pager \005 next-line # Mouse wheel 168 set query_command = "khard email --parsable %s" 169 bind editor <Tab> complete-query 170 bind editor ^T complete 171 bind index,pager M noop 172 bind index,pager,browser / search 173 bind index,pager,browser n search-next 174 bind index,pager,browser N search-opposite 175 bind index,pager f forward-message 176 macro index A "<limit>all<enter>" 177 178 # simulate the old url menu 179 macro index,pager,attach,compose w "\ 180 <enter-command> set my_pipe_decode=\$pipe_decode pipe_decode<Enter>\ 181 <pipe-message>w3m -T text/html -config ~/.config/w3m/config<enter> \ 182 <enter-command> set pipe_decode=\$my_pipe_decode; unset my_pipe_decode<Enter>" \ 183 "call urlview to extract URLs out of a message" 184 185 # simulate the old url menu 186 macro index,pager,attach,compose \cb "\ 187 <enter-command> set my_pipe_decode=\$pipe_decode pipe_decode<Enter>\ 188 <pipe-message> urlview<Enter> \ 189 <enter-command> set pipe_decode=\$my_pipe_decode; unset my_pipe_decode<Enter>" \ 190 "call urlview to extract URLs out of a message" 191 192 set nm_default_url = "notmuch://`notmuch config get database.path`" 193 bind index,pager + entire-thread 194 bind index,pager \Cf vfolder-from-query 195 196 bind index,pager i noop 197 source school 198 folder-hook $folder 'source ~/.config/neomutt/school' 199 macro index,pager is '<sync-mailbox><enter-command>source ~/.config/neomutt/school<enter><change-vfolder>Inbox (S)<enter><check-stats>' "switch to school" 200 201 source personal 202 folder-hook $folder 'source ~/.config/neomutt/personal' 203 macro index,pager ip '<sync-mailbox><enter-command>source ~/.config/neomutt/personal<enter><change-vfolder>Inbox (P)<enter><check-stats>' "switch to personal"