aboutsummaryrefslogtreecommitdiffstats
path: root/muttrc
diff options
context:
space:
mode:
Diffstat (limited to 'muttrc')
-rw-r--r--muttrc214
1 files changed, 74 insertions, 140 deletions
diff --git a/muttrc b/muttrc
index cb75059..47808e4 100644
--- a/muttrc
+++ b/muttrc
@@ -3,13 +3,9 @@
# at http://stevelosh.com/blog/2012/10/the-homely-mutt/#contacts
# source the mutt-solarized colorscheme
-#source ~/openbsd-dotfiles/mutt/mutt-colors-solarized-dark-256.muttrc
-#source ~/.mutt/mutt-colors-solarized-light-256.muttrc
-#source ~/.mutt/colors_purple
-#source ~/.mutt/colors256-light
-#source ~/.mutt/muttrc-softyellowgreen
+#source ~/dotfiles/.mutt/mutt-colors-solarized-dark-256.muttrc - no because it doesn't really work ya radge
-set folder = ~/Mail/fastmail # mailbox location
+set folder = ~/.mail/ # mailbox location
set alias_file = ~/.mutt/aliases # where to store aliases
set header_cache = ~/.mutt/cache/headers # where to store headers
set message_cachedir = ~/.mutt/cache/bodies # where to store bodies
@@ -18,10 +14,6 @@ set mailcap_path = ~/.mutt/mailcap # entries for filetypes
set tmpdir = ~/.mutt/temp # where to keep temp files
set signature = ~/.mutt/signature # my signature file
-source ~/.mutt/subscriptions # Define the list of subscribed mailing lists.
-#source ~/.mutt/colours # Define colours.
-source ~/.mutt/mutt-colors-solarized-dark-256.muttrc # Define colours.
-
# Allow forwarding of attachments with emails
set mime_forward
set mime_forward_rest
@@ -45,8 +37,8 @@ set text_flowed=yes
# Sidebar Patch --------------------------------------
#set sidebar_delim = '│'
-set sidebar_visible = no
-set sidebar_width = 20
+set sidebar_visible = yes
+set sidebar_width = 15
#set sidebar_format = "%B%?F? [%F]?%* %?N?%N/?%S"
set mail_check_stats
#set sidebar_width = 24
@@ -68,7 +60,7 @@ hdr_order from: to: cc: bcc: date: subject: # and in this order
# Account Settings -----------------------------------
# Default inbox.
-set spoolfile = "+INBOX"
+set spoolfile = "+matt-matthewlemon.com/INBOX"
#set spoolfile = "+INBOX"
# Alternate email addresses.
@@ -77,21 +69,14 @@ set spoolfile = "+INBOX"
# Mailboxes to show in the sidebar.
subscribe announce@openbsd.org
-subscribe ports-changes@cvs.openbsd.org
-subscribe tech@openbsd.org
-subscribe ports@openbsd.org
-subscribe misc@openbsd.org
-subscribe peter@golangweekly.com
-
-# groups
-alternates -group me '^matt@matthewlemon.com$' '^matthew.lemon@gmail.com$' '^matthew.lemon104@mod.gov.uk$'
-
-# named-mailboxes Inbox +INBOX \
-# Sent\ Items +Sent\ Items \
-# Archive +Archive \
-# Drafts +Drafts \
-# Trash +Trash \
+named-mailboxes Inbox +matt-matthewlemon.com/INBOX \
+ Sent +matt-matthewlemon.com/Sent \
+ Archive +matt-matthewlemon.com/Archive \
+ Drafts +matt-matthewlemon.com/Drafts \
+ # Archive.2020 +matt-matthewlemon.com/Archive.2020 \
+ # Sent.2020 +matt-matthewlemon.com/Sent.2020 \
+ Trash +matt-matthewlemon.com/Trash
# mailboxes +matt-matthewlemon.com/INBOX \
# +matt-matthewlemon.com/INBOX.Archive \
@@ -101,12 +86,12 @@ alternates -group me '^matt@matthewlemon.com$' '^matthew.lemon@gmail.com$' '^mat
#mailboxes +INBOX +INBOX.Archive +INBOX.Sent\ Items +INBOX.Drafts +INBOX.Trash
# Other special folders.
-set mbox = "+Archive"
-set postponed = "+Drafts"
+set mbox = "+matt-matthewlemon.com/INBOX.Archive"
+set postponed = "+matt-matthewlemon.com/INBOX.Drafts"
# Index View Options ---------------------------------
-set date_format = "%d-%m-%Y %H:%M "
-set index_format = "%4C [%Z] %B %D %-20.20F %s"
+set date_format = "%d-%m-%Y"
+set index_format = "[%Z] %B %D %-20.20F %s"
set sort = threads # like gmail
set sort_aux = reverse-last-date-received # like gmail
set uncollapse_jump # don't collapse on an unread message
@@ -128,9 +113,9 @@ macro index,pager \cb <pipe-entry>'urlview'<enter> 'Follow links with urlview'
macro attach,compose \cb <pipe-entry>'urlview'<enter> 'Follow links with urlview'
# Folder Shortcuts
-macro index Ei '<change-folder>+INBOX<enter>' 'Go to Inbox'
-macro index Ea '<change-folder>+Archive<enter>' 'Go to Archive'
-macro index Es '<change-folder>+Sent<enter>' 'Go to Sent Mail'
+macro index Ei '<change-folder>+matt-matthewlemon.com/INBOX<enter>' 'Go to Inbox'
+macro index Ea '<change-folder>+matt-matthewlemon.com/Archive<enter>' 'Go to Archive'
+macro index Es '<change-folder>+matt-matthewlemon.com/Sent<enter>' 'Go to Sent Mail'
# Navigate threads
bind index { previous-thread
@@ -142,25 +127,12 @@ bind index R group-reply
bind index <tab> sync-mailbox
bind index <space> collapse-thread
-# Email the sender (not a reply)
-bind index,pager @ compose-to-sender
-
-
-# toggle new
-bind index \Cn toggle-new
-
# Ctrl-R to mark all as read
macro index \Cr "T~U<enter><tag-prefix><clear-flag>N<untag-pattern>.<enter>" "mark all messages as read"
# Sync email
-macro index O "<shell-escape>clear && mbsync fastmailchannel && mrlnotmuch.sh <enter>" "run offlineimap to sync all mail"
-
-# update notmuch
-macro index V "<shell-escape>notmuch new<enter>"
-macro index K "<shell-escape>notmuch tag +inbox +unread -new -- tag:new<enter>"
-
-# macro index O "<shell-escape>offlineimap<enter>" "run offlineimap to sync all mail"
-# macro index o "<shell-escape>offlineimap -qf INBOX<enter>" "run offlineimap to sync inbox"
+macro index O "<shell-escape>offlineimap<enter>" "run offlineimap to sync all mail"
+macro index o "<shell-escape>offlineimap -qf INBOX<enter>" "run offlineimap to sync inbox"
# Saner copy/move dialogs
macro index C "<copy-message>?<toggle-mailboxes>" "copy a message to a mailbox"
@@ -185,6 +157,8 @@ alternative_order text/plain text/enriched text/html
# fix background colour
#color normal white black
+# identifies URLs
+
# Pager Key Bindings ---------------------------------
bind pager k previous-line
bind pager j next-line
@@ -196,6 +170,9 @@ bind pager R group-reply
# View attachments properly.
bind attach <return> view-mailcap
+# open links
+macro pager \Cu "|urlview<enter>" "call urlview to open links"
+
# Compose View Options -------------------------------
set realname = "Matthew Lemon" # who am i?
set envelope_from # which from?
@@ -213,19 +190,13 @@ set reverse_name # reply as whomever it was to
set include # include message in replies
set forward_quote # include message in forwards
-set editor = "vim" # Use terminal Vim to compose email.
-#set editor = "emacsclient -t %s"
-
-set from = "matt@matthewlemon.com"
-#set sendmail = "/usr/bin/msmtp -a fastmail"
-# set sendmail_wait = 0
+#set editor = "vim" # Use terminal Vim to compose email.
+set editor = "vim %s"
-set smtp_authenticators = PLAIN # see https://github.com/neomutt/neomutt/pull/3524
-set smtp_pass = `pass show AppPasswords/mbsync_fastmail_may2022`
-set imap_user = "mrlemon@mailforce.net"
-set smtp_url = "smtps://$imap_user:$smtp_pass@smtp.fastmail.com:465/"
-
-set record = "+Sent"
+set from = "matt@matthewlemon.com"
+set sendmail = "/usr/bin/msmtp -a matthewlemon"
+set sendmail_wait = 0
+set record = "+matt-matthewlemon.com/Sent"
bind compose p postpone-message
bind index p recall-message
@@ -233,13 +204,21 @@ bind index p recall-message
# Get mutt to understand the contacts command line prog which reads Contacts
#set query_command = "contacts -Sf '%eTOKEN%n' '%s' | sed -e 's/TOKEN/\t/g'"
+# khard
+set query_command = "/home/lemon/src/virtualenvs/khal-venv/bin/khard email --parsable %s"
+
## Abook
-set query_command= "abook --mutt-query '%s'"
+#set query_command= "abook --mutt-query '%s'"
macro generic,index,pager \ca "<shell-escape>abook<return>" "launch abook"
macro index,pager A "<pipe-message>abook --add-email<return>" "Add this sender to Abook"
bind editor <Tab> complete-query
bind editor ^T complete
+#set query_command = "khard email --parsable %s"
+# bind editor <Tab> complete-query
+# bind editor ^T complete
+# macro index,pager A "<pipe-message>khard add-email<return>" "add the sender email address to khard"
+
# Better searching in mutt
bind index N search-opposite
bind pager N search-opposite
@@ -248,11 +227,42 @@ macro index a "<limit>all\n" "show all messages (undo limit)"
# get an email from mutt to taskwarrior
macro index T "<pipe-message>mutt2task<enter> <move-message>+matt-matthewlemon.com/INBOX.Archive<enter>"
+# Handle searching using notmuch (see Steve Losh article)
+# this doesn't work on linux so using another macro index S "<enter-command>unset wait_key<enter><shell-escape>mutt-notmuch-py.py ~/.mail/temporary/search<enter><change-folder-readonly>+temporary/search<enter>" "search mail (using notmuch)"
+
+
+#new notmuch-mutt for linux
+
+macro index <F8> \
+"<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
+<shell-escape>notmuch-mutt -r --prompt search<enter>\
+<change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\
+<enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
+ "notmuch: search mail"
+
+macro index <F9> \
+"<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
+<pipe-message>notmuch-mutt -r thread<enter>\
+<change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\
+<enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
+ "notmuch: reconstruct thread"
+
+macro index <F6> \
+"<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
+<pipe-message>notmuch-mutt tag -- -inbox<enter>\
+<enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
+ "notmuch: remove message from inbox"
+
+
+# old Losh OSX-based orientation
+#macro index <F8> "<enter-command>unset wait_key<enter><shell-escape>/usr/bin/notmuch-mutt --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>/usr/bin/notmuch-mutt thread<enter><change-folder-readonly>~/.cache/mutt_results<enter><enter-command>set wait_key<enter>" "search and reconstruct owning thread (using notmuch)"
+#
#source ~/.mutt/gpg.rc # Use GPG
#source ~/.mutt/auto_views # Define auto_views.
source ~/.mutt/aliases # Load in my aliases.
source ~/.mutt/subscriptions # Define the list of subscribed mailing lists.
-source ~/.mutt/mailboxes # Define the list of folders that receive mail.
+#source ~/.mutt/mailboxes # Define the list of folders that receive mail.
#source ~/.mutt/headers # Configure header display.
#source ~/.mutt/folder-hooks # Define folder-hooks.
#source ~/.mutt/save-hooks # Define save-hooks.
@@ -260,86 +270,10 @@ source ~/.mutt/mailboxes # Define the list of folders that receiv
#source ~/.mutt/message-hooks # Define message hooks.
#source ~/.mutt/bindings # Define key bindings.
#source ~/.mutt/macros # Define macros.
-#source ~/.mutt/colours # Define colours.
+source ~/.mutt/colours # Define colours.
#source ~/.mutt/sidebar # Define sidebar support (requires sidebar patch)
#
# MAILCAP
auto_view text/html
-# example notmuch config:
-set virtual_spoolfile=yes
-
-# --------------------------------------------------------------------------
-# notmuch VARIABLES – shown with their default values
-# --------------------------------------------------------------------------
-# This variable specifies notmuch query limit.
-set nm_db_limit = 0
-# This variable specifies the default Notmuch database in format:
-# notmuch://<absolute path>
-set nm_default_url = "notmuch:///home/lemon/Mail"
-#set nm_default_url = ""
-# The messages tagged with these tags are excluded and not loaded
-# from notmuch DB to NeoMutt unless specified explicitly.
-set nm_exclude_tags = ""
-# This option specifies timeout for Notmuch database. Default is 5 seconds.
-set nm_open_timeout = 5
-# This variable specifies notmuch query type, supported types: 'threads' and
-# 'messages'.
-set nm_query_type = messages
-# When writing a message in the NeoMutt record (see $record in the NeoMutt docs),
-# also add it to the notmuch DB. Replies inherit the tags from the original email.
-set nm_record = no
-# Tags modifications to the messages stored in the NeoMutt record.
-# example:
-# set record = "~/sent-mails"
-# set nm_record = yes
-# set nm_record_tags = "-inbox,archive,me"
-set nm_record_tags = ""
-# This variable specifies the notmuch tag used for unread messages.
-set nm_unread_tag = unread
-# This variable allows you to customize the file browser display for virtual
-# folders to your personal taste.
-# %C current folder number
-# %f folder name (description)
-# %m number of messages in the mailbox *
-# %n number of unread messages in the mailbox *
-# %N N if mailbox has new mail, blank otherwise
-# %>X right justify the rest of the string and pad with character ``X''
-# %|X pad to the end of the line with character ``X''
-# %*X soft-fill with character ``X'' as pad
-set vfolder_format = "%6n(%6N) %f"
-# When set, NeoMutt will use the first virtual mailbox (see virtual-mailboxes)
-# as a spool_file.
-#set virtual_spool_file = no
-# setup time window preferences
-# first setup the duration, and then the time unit of that duration
-# when set to 0 (the default) the search window feature is disabled
-# unless explicitly enabled with nm_query_window_enable.
-set nm_query_window_enable=no
-set nm_query_window_duration=0
-set nm_query_window_timebase="year" # or "hour", "day", "week", "month", "year"
-# Extend query window to always show mail matching these terms.
-#set nm_query_window_or_terms="tag:unread and tag:flagged"
-# --------------------------------------------------------------------------
-# FUNCTIONS – shown with an example mapping
-# --------------------------------------------------------------------------
-# open a different virtual folder
-bind index,pager X change-vfolder
-# read entire thread of the current message
-bind index,pager + entire-thread
-# generate virtual folder from query
-bind index,pager \eX vfolder-from-query
-# generate virtual folder from query with time window
-bind index < vfolder-window-backward
-bind index > vfolder-window-forward
-# toggle between mailboxes and virtual mailboxes
-# bind index,pager ??? sidebar-toggle-virtual
-# --------------------------------------------------------------------------
-# COMMANDS – shown with an example
-# --------------------------------------------------------------------------
-# virtual-mailboxes description notmuch-URL { description notmuch-URL ...}
-# virtual-mailboxes "Climbing" "notmuch://?query=climbing"
-# unvirtual-mailboxes { * | mailbox ...}
-#
-# --------------------------------------------------------------------------
# vim: ft=muttrc