aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mutt/accounts/FAU6
-rw-r--r--mutt/accounts/MUHQ7
-rw-r--r--mutt/accounts/SNFMT7
-rw-r--r--mutt/accounts/change_account14
-rw-r--r--mutt/accounts/macros18
-rw-r--r--mutt/bindings30
-rw-r--r--mutt/gpg (renamed from mutt/gpg.rc)0
-rw-r--r--mutt/mailinglists2
-rw-r--r--mutt/solarized-dark (renamed from mutt/solarized-dark.muttrc)0
-rw-r--r--mutt/solarized-light (renamed from mutt/solarized-light.muttrc)0
l---------mutt/theme1
l---------mutt/theme.muttrc1
-rw-r--r--muttrc79
13 files changed, 141 insertions, 24 deletions
diff --git a/mutt/accounts/FAU b/mutt/accounts/FAU
new file mode 100644
index 0000000..203a63d
--- /dev/null
+++ b/mutt/accounts/FAU
@@ -0,0 +1,6 @@
+set from = "florian.fl.fischer@fau.de"
+
+set my_account = "FAU"
+source $my_cfgdir/accounts/change_account
+
+color status cyan default
diff --git a/mutt/accounts/MUHQ b/mutt/accounts/MUHQ
new file mode 100644
index 0000000..2302a17
--- /dev/null
+++ b/mutt/accounts/MUHQ
@@ -0,0 +1,7 @@
+set from = "florian.fischer@muhq.space"
+alternates ^[:graph:]*@muhq.space$
+
+set my_account = "MUHQ"
+source $my_cfgdir/accounts/change_account
+
+color status red default
diff --git a/mutt/accounts/SNFMT b/mutt/accounts/SNFMT
new file mode 100644
index 0000000..5de28ee
--- /dev/null
+++ b/mutt/accounts/SNFMT
@@ -0,0 +1,7 @@
+set from = "jesus@supernovafickmichtot.de"
+alternates ^[:graph:]*@supernovafickmichtot.de$
+
+set my_account = "SNFMT"
+source $my_cfgdir/accounts/change_account
+
+color status magenta default
diff --git a/mutt/accounts/change_account b/mutt/accounts/change_account
new file mode 100644
index 0000000..96c8ab9
--- /dev/null
+++ b/mutt/accounts/change_account
@@ -0,0 +1,14 @@
+# this file contains generic part of an account change
+# setting the new folders aswell as the smtp command
+
+set sendmail = "/usr/local/bin/msmtp -a $my_account"
+
+# Set folders
+set spoolfile = "+$my_account/INBOX"
+set mbox = "+$my_account/Archive"
+set postponed = "+$my_account/Drafts"
+set record = "+$my_account/Sent"
+set trash = "+$my_account/Trash"
+
+# resource account dependent macros
+source $my_cfgdir/accounts/macros
diff --git a/mutt/accounts/macros b/mutt/accounts/macros
new file mode 100644
index 0000000..0f1543d
--- /dev/null
+++ b/mutt/accounts/macros
@@ -0,0 +1,18 @@
+# The macros in this file depend on the variable my_account but they evaluate its value
+# at runtime so they must be redefined when changing accounts
+
+macro index o "<shell-escape>mbsync $my_account<enter>" "run mbsync to sync mail for this account"
+
+macro index,pager s \
+ "<enter-command>set my_old_resolve=\$resolve noresolve<enter>\
+ <tag-prefix><clear-flag>n<enter-command>set resolve=\$my_old_resolve<enter>\
+ <save-message>+$my_account/Junk<enter>" \
+ "mark as read and move to junk folder"
+
+macro index,pager a \
+ "<save-message>+$my_account/Archive<enter>" \
+ "move message to the archive"
+
+macro index,pager i \
+ "<save-message>+$my_account/INBOX<enter>" \
+ "move message to the inbox"
diff --git a/mutt/bindings b/mutt/bindings
new file mode 100644
index 0000000..1d7fb15
--- /dev/null
+++ b/mutt/bindings
@@ -0,0 +1,30 @@
+# some sane vim-like keybindings
+bind index k previous-entry
+bind index j next-entry
+bind pager k previous-line
+bind pager j next-line
+bind index,pager g noop
+bind pager gg top
+bind index gg first-entry
+bind pager G bottom
+bind index G last-entry
+
+bind index,pager \Cd purge-message
+
+# Sidebar Navigation
+bind index,pager <down> sidebar-next
+bind index,pager <up> sidebar-prev
+bind index,pager <right> sidebar-open
+
+# index and pager shortcuts
+bind index,pager @ compose-to-sender
+bind index,pager R group-reply
+bind index <tab> sync-mailbox
+bind index <space> collapse-thread
+
+# Sync all email
+macro index,pager O "<shell-escape>mbsync -a<enter>" "run mbsync to sync all mail"
+
+# Drafts
+bind compose P postpone-message
+bind index p recall-message
diff --git a/mutt/gpg.rc b/mutt/gpg
index 41c5525..41c5525 100644
--- a/mutt/gpg.rc
+++ b/mutt/gpg
diff --git a/mutt/mailinglists b/mutt/mailinglists
new file mode 100644
index 0000000..e5eff7f
--- /dev/null
+++ b/mutt/mailinglists
@@ -0,0 +1,2 @@
+subscribe info@fsf.org
+subscribe oeffentlich@erlangen.ccc.de
diff --git a/mutt/solarized-dark.muttrc b/mutt/solarized-dark
index e9d6def..e9d6def 100644
--- a/mutt/solarized-dark.muttrc
+++ b/mutt/solarized-dark
diff --git a/mutt/solarized-light.muttrc b/mutt/solarized-light
index 3c119fb..3c119fb 100644
--- a/mutt/solarized-light.muttrc
+++ b/mutt/solarized-light
diff --git a/mutt/theme b/mutt/theme
new file mode 120000
index 0000000..fc46dbc
--- /dev/null
+++ b/mutt/theme
@@ -0,0 +1 @@
+solarized-dark \ No newline at end of file
diff --git a/mutt/theme.muttrc b/mutt/theme.muttrc
deleted file mode 120000
index 0d8ef07..0000000
--- a/mutt/theme.muttrc
+++ /dev/null
@@ -1 +0,0 @@
-solarized-dark.muttrc \ No newline at end of file
diff --git a/muttrc b/muttrc
index 175e5a6..3057291 100644
--- a/muttrc
+++ b/muttrc
@@ -1,20 +1,33 @@
-################# MAILDIR ####################
-set mbox_type=Maildir
-set folder=~/.local/share/maildir/FAU
-# Define the = shortcut, and the entry point for the folder browser (c?)
-set spoolfile="+/INBOX"
-set record="+Sent"
-set postponed="+Drafts"
+################# GENERAL ###################
+set realname = 'Florian Fischer'
-############### SMTP #######################
+set my_cfgdir = $HOME/.mutt
-set realname = 'Florian Fischer'
-set from = "florian.fl.fischer@fau.de"
-set use_from = yes
+set mbox_type = Maildir
+set folder = ~/.local/share/maildir/
+
+# 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
+
+################ ACCOUNTS ####################
+# default account
+set my_account = "MUHQ"
+source $my_cfgdir/accounts/$my_account
+
+# when changing into other mailboxes, use different adresses etc.
+folder-hook FAU/* source $my_cfgdir/accounts/FAU
+folder-hook MUHQ/* source $my_cfgdir/accounts/MUHQ
+folder-hook SNFMT/* source $my_cfgdir/accounts/SNFMT
+
+# find all maildirs
+mailboxes `find ~/.local/share/maildir/FAU -type d '(' -name 'cur' -o -name 'new' ')' -prune -printf '%h '`
+mailboxes `find ~/.local/share/maildir/MUHQ -type d '(' -name 'cur' -o -name 'new' ')' -prune -printf '%h '`
+mailboxes `find ~/.local/share/maildir/SNFMT -type d '(' -name 'cur' -o -name 'new' ')' -prune -printf '%h '`
############### GPG ########################
-source ~/.mutt/gpg.rc
+source ~/.mutt/gpg
set pgp_use_gpg_agent = yes
@@ -26,23 +39,43 @@ set crypt_verify_sig=yes
set sort=threads
set sort_aux=last-date-received
+set collapse_all
+unset collapse_unread
# use khard as external adressbook
set query_command= "khard email --parsable %s"
bind editor <Tab> complete-query
bind editor ^T complete
-############## Bindings ####################
+############## COLOR #######################
-bind pager j next-line
-bind pager k previous-line
-bind attach,index,pager \CD next-page
-bind attach,index,pager \CU previous-page
-bind pager g top
-bind pager G bottom
-bind attach,index g first-entry
-bind attach,index G last-entry
+source ~/.mutt/theme
-############## COLOR #######################
+############ STATUSBAR #####################
+
+# status bar, date format, finding stuff etc.
+set status_format="───%r %D [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?l? %l?]───(%s/%S)─%>─(%P)───"
+set compose_format="─── Compose [Approx. msg size: %l Atts: %a]%>─"
+set date_format = "%d.%m.%Y %H:%M"
+set index_format = "[%Z] %?X?A&-? %D %-20.20F %s"
+
+############# SIDEBAR ######################
+
+set mail_check_stats # collect stats to show them in the sidebar
+
+set sidebar_visible
+set sidebar_folder_indent
+set sidebar_width = 35
+set sidebar_divider_char = ' | '
+set sidebar_indent_string = ' '
+set sidebar_format = "%B %* [%?N?%N / ?%S]"
+set sidebar_non_empty_mailbox_only
+set sidebar_sort_method = 'new'
+
+############# BINDINGS #####################
+
+source $my_cfgdir/bindings
+
+############# MAILING LISTS ################
-source ~/.mutt/theme.muttrc
+source $my_cfgdir/mailinglists