Added neomutt
This commit is contained in:
parent
5d74e878dd
commit
694246f533
6 changed files with 364 additions and 0 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -24,3 +24,5 @@ config/geary/account_*
|
|||
local/share/geary
|
||||
config/enchant
|
||||
config/GIMP
|
||||
config/neomutt/accounts
|
||||
config/neomutt/signature
|
||||
|
|
121
config/neomutt/colors
Normal file
121
config/neomutt/colors
Normal file
|
@ -0,0 +1,121 @@
|
|||
# vim: filetype=muttrc
|
||||
|
||||
# basic colors ---------------------------------------------------------
|
||||
color normal color254 default
|
||||
color error color160 default
|
||||
color tilde color235 default
|
||||
color message color37 default
|
||||
color markers color160 default
|
||||
color attachment color254 default
|
||||
color search color61 default
|
||||
color status color241 default
|
||||
color indicator white color237
|
||||
color tree color136 default # arrow in threads
|
||||
|
||||
# basic monocolor screen
|
||||
mono bold bold
|
||||
mono underline underline
|
||||
mono indicator reverse
|
||||
mono error bold
|
||||
|
||||
# index ----------------------------------------------------------------
|
||||
color index color160 default "~D(!~p|~p)" # deleted
|
||||
color index color235 default ~F # flagged
|
||||
color index color166 default ~= # duplicate messages
|
||||
color index color140 default "~A!~N!~T!~p!~Q!~F!~D!~P" # the rest
|
||||
color index color160 default "~A" # all messages
|
||||
color index color166 default "~E" # expired messages
|
||||
color index color33 default "~N" # new messages
|
||||
color index color33 default "~O" # old messages
|
||||
color index color61 default "~Q" # messages that have been replied to
|
||||
color index color252 default "~R" # read messages
|
||||
color index color33 default "~U" # unread messages
|
||||
color index color33 default "~U~$" # unread, unreferenced messages
|
||||
color index color141 default "~v" # messages part of a collapsed thread
|
||||
color index color141 default "~P" # messages from me
|
||||
color index color37 default "~p!~F" # messages to me
|
||||
color index color37 default "~N~p!~F" # new messages to me
|
||||
color index color37 default "~U~p!~F" # unread messages to me
|
||||
color index color252 default "~R~p!~F" # messages to me
|
||||
color index color160 default "~F" # flagged messages
|
||||
color index color160 default "~F~p" # flagged messages to me
|
||||
color index color160 default "~N~F" # new flagged messages
|
||||
color index color160 default "~N~F~p" # new flagged messages to me
|
||||
color index color160 default "~U~F~p" # new flagged messages to me
|
||||
color index color235 color160 "~D" # deleted messages
|
||||
color index color245 default "~v~(!~N)" # collapsed thread with no unread
|
||||
color index color136 default "~v~(~N)" # collapsed thread with some unread
|
||||
color index color64 default "~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 color235 "~v~(~F)!~N" # collapsed thread with flagged, no unread
|
||||
color index color136 color235 "~v~(~F~N)" # collapsed thread with some unread & flagged
|
||||
color index color64 color235 "~N~v~(~F~N)" # collapsed thread with unread parent & flagged
|
||||
color index color64 color235 "~N~v~(~F)" # collapsed thread with unread parent, no unread inside, but some flagged
|
||||
color index color37 color235 "~v~(~p)" # collapsed thread with unread parent, no unread inside, some to me directly
|
||||
color index color136 color160 "~v~(~D)" # thread with deleted (doesn't differentiate between all or partial)
|
||||
color index color136 default "~T" # tagged messages
|
||||
color index_author color32 default '.*'
|
||||
color index_date color214 default
|
||||
color index_size color28 default
|
||||
|
||||
# message headers ------------------------------------------------------
|
||||
color header color251 default "^"
|
||||
color hdrdefault color251 default
|
||||
color header color214 default "^(Date)"
|
||||
color header color251 default "^(From)"
|
||||
color header color39 default "^(Subject)"
|
||||
|
||||
# body -----------------------------------------------------------------
|
||||
color quoted color31 default
|
||||
color quoted1 color37 default
|
||||
color quoted2 color136 default
|
||||
color quoted3 color160 default
|
||||
color quoted4 color166 default
|
||||
|
||||
color signature color240 default
|
||||
color bold color235 default
|
||||
color underline color235 default
|
||||
color normal color250 default
|
||||
color body color245 default "[;:][-o][)/(|]" # emoticons
|
||||
color body color245 default "[;:][)(|]" # emoticons
|
||||
color body color245 default "[*]?((N)?ACK|CU|LOL|SCNR|BRB|BTW|CWYL|\
|
||||
|FWIW|vbg|GD&R|HTH|HTHBE|IMHO|IMNSHO|\
|
||||
|IRL|RTFM|ROTFL|ROFL|YMMV)[*]?"
|
||||
color body color245 default "[ ][*][^*]*[*][ ]?" # more emoticon?
|
||||
color body color245 default "[ ]?[*][^*]*[*][ ]" # more emoticon?
|
||||
|
||||
## pgp
|
||||
color body color160 default "(BAD signature)"
|
||||
color body color37 default "(Good signature)"
|
||||
color body color234 default "^gpg: Good signature .*"
|
||||
color body color241 default "^gpg: "
|
||||
color body color241 color160 "^gpg: BAD signature from.*"
|
||||
mono body bold "^gpg: Good signature"
|
||||
mono body bold "^gpg: BAD signature from.*"
|
||||
|
||||
# yes, an insance URL regex
|
||||
color body color33 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<>\"]"
|
||||
|
||||
# Various smilies and the like
|
||||
color body color230 default "<[Gg]>" # <g>
|
||||
color body color230 default "<[Bb][Gg]>" # <bg>
|
||||
color body color136 default " [;:]-*[})>{(<|]" # :-) etc...
|
||||
# *bold*
|
||||
color body color33 default "(^|[[:space:][:punct:]])\\*[^*]+\\*([[:space:][:punct:]]|$)"
|
||||
mono body bold "(^|[[:space:][:punct:]])\\*[^*]+\\*([[:space:][:punct:]]|$)"
|
||||
# _underline_
|
||||
color body color33 default "(^|[[:space:][:punct:]])_[^_]+_([[:space:][:punct:]]|$)"
|
||||
mono body underline "(^|[[:space:][:punct:]])_[^_]+_([[:space:][:punct:]]|$)"
|
||||
# /italic/ (Sometimes gets directory names)
|
||||
color body color33 default "(^|[[:space:][:punct:]])/[^/]+/([[:space:][:punct:]]|$)"
|
||||
mono body underline "(^|[[:space:][:punct:]])/[^/]+/([[:space:][:punct:]]|$)"
|
||||
|
||||
# Border lines.
|
||||
color body color33 default "( *[-+=#*~_]){6,}"
|
||||
|
||||
# Sidebar
|
||||
color sidebar_new color33 default
|
||||
color sidebar_flagged color160 default
|
||||
# set sidebar_format = "%B%?F? [%F]?%* %?N?%N/?%S"
|
||||
color progress white color237
|
11
config/neomutt/mailcap
Normal file
11
config/neomutt/mailcap
Normal file
|
@ -0,0 +1,11 @@
|
|||
text/html; firefox -new-tab %s & sleep 5; test=test -n "$DISPLAY";
|
||||
#
|
||||
# for mutt to view html e-mails
|
||||
# text/html; w3m -I %{charset} -T text/html; copiousoutput
|
||||
text/html; html2text %s; copiousoutput
|
||||
|
||||
application/pdf; evince %s; copiousoutput
|
||||
# text/calendar; ~/.mutt/scripts/vcalendar-filter; copiousoutput
|
||||
#text/calendar; mutt-ics; copiousoutput
|
||||
#application/ics; mutt-ics; copiousoutput
|
||||
application/*; xdg-open %s
|
40
config/neomutt/neomuttrc
Normal file
40
config/neomutt/neomuttrc
Normal file
|
@ -0,0 +1,40 @@
|
|||
source ~/.config/neomutt/settings
|
||||
source ~/.config/neomutt/colors
|
||||
source ~/.config/neomutt/sidebar
|
||||
|
||||
source ~/.config/neomutt/accounts/darkou
|
||||
source ~/.config/neomutt/accounts/mousur
|
||||
|
||||
|
||||
# Specify where to save and/or look for postponed messages.
|
||||
##set postponed = +[Gmail]/Drafts
|
||||
|
||||
# Allow Mutt to open a new IMAP connection automatically.
|
||||
#unset imap_passive
|
||||
|
||||
# Store message headers locally to speed things up.
|
||||
# If hcache is a folder, Mutt will create sub cache folders for each account which may speeds things up even more.
|
||||
#set header_cache = ~/.cache/mutt
|
||||
|
||||
# Store messages locally to speed things up, like searching message bodies.
|
||||
# Can be the same folder as header_cache.
|
||||
# This will cost important disk usage according to your e-mail amount.
|
||||
#set message_cachedir = "~/.cache/mutt"
|
||||
|
||||
# Keep the IMAP connection alive by polling intermittently (time in seconds).
|
||||
#set imap_keepalive = 300
|
||||
|
||||
# How often to check for new mail (time in seconds).
|
||||
#set mail_check = 120
|
||||
|
||||
# Editor
|
||||
#set editor = "vim"
|
||||
#set charset = "utf-8"
|
||||
#set record = '^'
|
||||
|
||||
# Mailbox ordering
|
||||
#set sort_aux = reverse-last-date-received
|
||||
#set sort = threads
|
||||
|
||||
# G to get mail
|
||||
#bind index G imap-fetch-mail
|
144
config/neomutt/settings
Normal file
144
config/neomutt/settings
Normal file
|
@ -0,0 +1,144 @@
|
|||
# vim: filetype=muttrc
|
||||
# Based on https://github.com/Nelyah/dotfiles
|
||||
|
||||
set editor=$EDITOR
|
||||
set my_name = "Damien Broqua"
|
||||
set realname = "Damien Broqua"
|
||||
set imap_check_subscribed
|
||||
|
||||
# main options
|
||||
set envelope_from
|
||||
|
||||
# Paths ----------------------------------------------
|
||||
#set folder = ~/.mail # mailbox location
|
||||
#set alias_file = ~/.config/neomutt/alias # where to store aliases
|
||||
set header_cache = ~/.neomutt/cache/headers # where to store headers
|
||||
set message_cachedir = ~/.neomutt/cache/bodies # where to store bodies
|
||||
set certificate_file = ~/.neomutt/certificates # where to store certs
|
||||
set mailcap_path = ~/.config/neomutt/mailcap # entries for filetypes
|
||||
set tmpdir = ~/.neomutt/temp # where to keep temp files
|
||||
|
||||
# Basic Options --------------------------------------
|
||||
set wait_key = no # shut up, mutt
|
||||
set mbox_type = Maildir # mailbox type
|
||||
set timeout = 3 # idle time before scanning
|
||||
set mail_check = 120 # minimum time between scans
|
||||
set mail_check_stats
|
||||
unset move # gmail does that
|
||||
set delete # don't ask, just do
|
||||
unset confirmappend # don't ask, just do!
|
||||
set quit # don't ask, just do!!
|
||||
unset mark_old # read/new is good enough for me
|
||||
set beep_new # bell on new mails
|
||||
set pipe_decode # strip headers and eval mimes when piping
|
||||
set thorough_search # strip headers and eval mimes before searching
|
||||
|
||||
# sort/threading
|
||||
set sort = threads
|
||||
set sort_aux = reverse-last-date-received
|
||||
set sort_re
|
||||
|
||||
# look and feel
|
||||
set pager_index_lines = 8
|
||||
set pager_context = 5
|
||||
set pager_stop
|
||||
set menu_scroll
|
||||
set smart_wrap
|
||||
set tilde
|
||||
unset markers
|
||||
|
||||
# composing
|
||||
set fcc_attach
|
||||
unset mime_forward
|
||||
set forward_format = "Fwd: %s"
|
||||
set include
|
||||
set forward_quote
|
||||
|
||||
set smileys="(>From )|(:[-^]?[][)(><|/DPp])"
|
||||
|
||||
# Prevent on attachment
|
||||
set abort_noattach='ask-yes'
|
||||
set attach_keyword="\\<[Cc]i-joint\\>|\\<[Ff]ichier joint\\>|\\<[Pp]ièce jointe\\>"
|
||||
|
||||
# Headers infos
|
||||
ignore * # first, ignore all headers
|
||||
unignore from: to: cc: date: subject: # then, show only these
|
||||
hdr_order from: to: cc: date: subject: # and in this order<Paste>
|
||||
|
||||
# Navigation
|
||||
bind attach,index,pager \CD next-page
|
||||
bind attach,index,pager \CB previous-page
|
||||
bind index D purge-message
|
||||
bind index,pager \Cb half-up
|
||||
bind index,pager \Cd half-down
|
||||
bind index,pager,attach g noop
|
||||
bind index,pager,attach r group-reply
|
||||
bind index,pager,attach \CR reply
|
||||
#bind pager gg top
|
||||
#bind pager G bottom
|
||||
bind attach,index G last-entry
|
||||
bind attach,index gg first-entry
|
||||
bind attach,pager j next-line
|
||||
bind attach,pager k previous-line
|
||||
bind attach,pager J next-entry
|
||||
bind attach,pager K previous-entry
|
||||
bind editor <Tab> complete-query
|
||||
#set query_command= "khard email --parsable --search-in-source-files '%s'"
|
||||
#set query_command = "( khard email --parsable '%s' | sed -n '1!p'; mu cfind --format=mutt-ab '%s' )"
|
||||
bind editor ^T complete
|
||||
set edit_headers = yes
|
||||
|
||||
set sleep_time = 0
|
||||
set autoedit
|
||||
set edit_headers
|
||||
|
||||
# Allow Mutt to open a new IMAP connection automatically.
|
||||
unset imap_passive
|
||||
|
||||
# Keep the IMAP connection alive by polling intermittently (time in seconds).
|
||||
set imap_keepalive = 300
|
||||
|
||||
#auto_view text/html text/calendar application/ics # view html automatically
|
||||
auto_view text/html
|
||||
|
||||
alternative_order text/enriched text/plain text/html text/*
|
||||
|
||||
#macro attach \CE "<pipe-message>khal import<enter>"
|
||||
|
||||
|
||||
# Macros for switching accounts
|
||||
macro index <f2> '<sync-mailbox><enter-command>source ~/.config/neomutt/accounts/darkou<enter><change-folder>!<enter>'
|
||||
macro index <f3> '<sync-mailbox><enter-command>source ~/.config/neomutt/accounts/mousur<enter><change-folder>!<enter>'
|
||||
|
||||
# use tab to switch between accounts, inspired by
|
||||
# http://msmtp.sourceforge.net/doc/msmtp.html#Using-msmtp-with-Mutt
|
||||
macro generic \Cx| "<enter-command>source"
|
||||
macro generic \Cx& "<enter-command>macro index \\t \"\\Cx"
|
||||
macro index <tab> "\Cx0" # default change to account 1, this will be redefined once pressed
|
||||
macro generic \Cx0 "\Cx| ~/.mutt/accounts/darkou\"\n\Cx&1\"<enter><change-folder>!<enter>"
|
||||
macro generic \Cx1 "\Cx| ~/.mutt/accounts/mousur\"\n\Cx&0\"<enter><change-folder>!<enter>"
|
||||
|
||||
|
||||
set index_format="%3C %Z %[!%m.%d.%y] %-19.19n %?X?(%1X)& ? %?M?(%02M)& ? %s%> %?y?[%Y]?"
|
||||
set index_format="%Z %3C %{%b %d} %-17.17n (%5c) %s"
|
||||
set index_format="%3C %Z %{%b %d} %-19.19n (%5c) %?X?(%1X)& ? %?M?(%02M)& ? %s%> %?y?[%Y]?"
|
||||
#macro index L "<enter-command>unset wait_key<enter><shell-escape>read -p 'mu query: ' x; echo \$x >~/.mu/search_term<enter><shell-escape>mu find --format=links --linksdir=~/.mail/search/ --clearlinks \$(cat ~/.mu/search_term)<enter><enter-command>set wait_key<enter>" "show only messages matching a notmuch pattern"
|
||||
|
||||
#macro index gf "<change-folder>~/.mail/search<enter>" "mu find results"
|
||||
#macro index \cl "<enter-command>unset wait_key<enter><shell-escape>mu find --format=links --linksdir=~/testmail/ --clearlinks \$(cat ~/.mu/search_term)<enter><enter-command>set wait_key<enter>" "mu find results"
|
||||
|
||||
#macro index <F8> \
|
||||
# "<enter-command>unset wait_key<enter><shell-escape>~/bin/mutt-notmuch --prompt search<enter><change-folder-readonly>~/.cache/mutt_results<enter>" \
|
||||
# "search mail (using notmuch)"
|
||||
#macro index <F9> \
|
||||
# "<enter-command>unset wait_key<enter><pipe-message>~/bin/mutt-notmuch thread<enter><change-folder-readonly>~/.cache/mutt_results<enter><enter-command>set wait_key<enter>" \
|
||||
# "search and reconstruct owning thread (using notmuch)"
|
||||
|
||||
#macro index,pager \cu "<pipe-message> urlscan<Enter>" "call urlscan to extract URLs out of a message"
|
||||
#macro attach,compose \cu "<pipe-entry> urlscan<Enter>" "call urlscan to extract URLs out of a message"
|
||||
|
||||
# Sync all email
|
||||
# If you want to make everything indexable after syncing email, use the office-alias
|
||||
#macro index,pager P "<shell-escape>mbsync -a<enter>" "run mbsync to sync all mail"
|
||||
macro index zc "<collapse-thread>" "collapse thread"
|
||||
macro index zo "<collapse-thread>" "collapse thread"
|
46
config/neomutt/sidebar
Normal file
46
config/neomutt/sidebar
Normal file
|
@ -0,0 +1,46 @@
|
|||
# Example NeoMutt config file for the sidebar feature.
|
||||
|
||||
# --------------------------------------------------------------------------
|
||||
# VARIABLES - shown with their default values
|
||||
# --------------------------------------------------------------------------
|
||||
|
||||
# Should the Sidebar be shown?
|
||||
set sidebar_sort_method = 'alpha'
|
||||
set sidebar_visible = yes
|
||||
set sidebar_folder_indent=yes # Indent folders whose names we've shortened
|
||||
set sidebar_indent_string=' ' # Indent with two spaces
|
||||
set sidebar_short_path # Shorten mailbox names
|
||||
|
||||
set mail_check_stats = yes
|
||||
set sidebar_divider_char = ' │ '
|
||||
#set sidebar_width = 25
|
||||
set sidebar_short_path = yes
|
||||
color sidebar_indicator default color25 # Dark blue background
|
||||
color sidebar_highlight white color238 # Grey background
|
||||
color sidebar_spoolfile yellow default # Yellow
|
||||
color sidebar_flagged red default # Red
|
||||
color sidebar_divider color8 default # Dark grey
|
||||
color sidebar_new brightblue default
|
||||
|
||||
# When abbreviating mailbox path names, use any of these characters as path
|
||||
# separators. Only the part after the last separators will be shown.
|
||||
# For file folders '/' is good. For IMAP folders, often '.' is useful.
|
||||
set sidebar_delim_chars='/.' # Delete everything up to the last / character
|
||||
|
||||
# --------------------------------------------------------------------------
|
||||
# FUNCTIONS - shown with an example mapping
|
||||
# --------------------------------------------------------------------------
|
||||
|
||||
# Move the highlight to the previous mailbox
|
||||
bind index,pager \Cp sidebar-prev
|
||||
|
||||
# # Move the highlight to the next mailbox
|
||||
bind index,pager \Cn sidebar-next
|
||||
|
||||
# # Open the highlighted mailbox
|
||||
bind index,pager \Co sidebar-open
|
||||
|
||||
# Toggle the visibility of the Sidebar.
|
||||
bind index,pager B sidebar-toggle-visible
|
||||
|
||||
# vim: syntax=muttrc
|
Loading…
Reference in a new issue