commit: 72a53011950a504e7b05705207ad30d7f22b3700
parent 542339b88fd2c5c5739be03296632418143a0017
Author: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Date: Sat, 15 Nov 2025 21:28:16 +0100
.muttrc: bump
Signed-off-by: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Diffstat:
2 files changed, 66 insertions(+), 8 deletions(-)
diff --git a/.local/bin/list-mailboxes.sh b/.local/bin/list-mailboxes.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+sub_maildirs() {
+ find $1 -name '.*' -printf '~/%h/%f\n' | sort | tr '\n' ' '
+}
+
+set -e
+
+cd
+
+echo -n "~/sent "
+
+echo -n "~/Maildir "
+sub_maildirs Maildir
+
+#echo -n "~/Mail "
+sub_maildirs Mail
diff --git a/.muttrc b/.muttrc
@@ -1,17 +1,47 @@
set mbox_type=Maildir
+# Don't wait for user to press a key after an ext-command
+set wait_key=no
+
+# Serious-fucking-ly…
+set sleep_time=0
+
set edit_headers=yes
-set reverse_name
-alternates 'lanodan.eu$' 'hacktivis.me$' 'the-delta.net.eu.org$' 'urtu.be$' 'girldick.pw$'
+# this should be the default, soft-newline via using a trailing space
+set text_flowed=yes
+
+# Uses tmux to launch editor in another pane
+set background_edit=yes
+set editor = 'mutt-bgedit-tmux vis'
+set suspend=no
-mailboxes `echo -n "$MAIL " '~/sent + '; find ~/Mail $MAIL -name '.*' -type d -printf '+"%f" '`
+set use_8bitmime=yes
+
+# should also be set as default, allows to forward an email as a MIME attachment
+set mime_forward=ask-yes
+
+alternates `sed -e 's;^;^;' -e 's;$;$;' /etc/mail/domains-regex`
+
+# Better fallback than user@FQDN
+set from=contact@hacktivis.me
+set reverse_name
+
+# ~/.local/bin/list-mailboxes.sh
+mailboxes `list-mailboxes.sh`
## caching
-set header_cache = ~/.cache/mutt/header
+set header_cache = ~/.cache/mutt/headers/
# Assume that mutt is the only client
set maildir_header_cache_verify = no
+# Put sent email in the same-folder, actually useless given that most mailing-list software sends you a copy back
+#folder-hook . set record=^
+
+## Address-based mailing-list status detection
+lists '.*@lists?\.*'
+subscribe '.*@lists.gentoo.org$' '.*@lists.sr.ht$'
+
## Sidebar
set sidebar_visible
set sidebar_on_right
@@ -28,21 +58,30 @@ bind index,pager \Cl sidebar-open
alternative_order text/plain text/html
auto_view 'text/html' 'application/tlsrpt+gzip'
ignore *
-unignore 'Date' 'Subject' 'From' 'To' 'Cc' 'Reply-To' 'List-*' 'Message-ID' 'In-Reply-To' 'References'
-hdr_order 'Date' 'Subject' 'From' 'To' 'Cc' 'Reply-To' 'List-*' 'Message-ID' 'In-Reply-To' 'References'
+unignore 'Date' 'Subject' 'From' 'To' 'Cc' 'Reply-To' 'List-ID' 'Message-ID' 'In-Reply-To' 'References' 'X-Spamd-Bar' 'X-Spam-Score'
+hdr_order 'Date' 'Subject' 'From' 'To' 'Cc' 'Reply-To' 'List-ID' 'Message-ID' 'In-Reply-To' 'References' 'X-Spamd-Bar' 'X-Spam-Score'
set pager_index_lines=10
set markers=no
-set index_format = "%2C | %Z [%D] %-30.30F (%-4.4c) %s"
+set index_format = "%4C | %Z [%D] %-20.20O : %-30.30F (%-4.4c) %s"
set date_format = "%F %T%z"
set attribution = '[%d] %n:\n'
set sort = 'threads'
set sort_aux = 'last-date-received'
+# no continous scrolling
+set pager_stop = yes
+
## Keybindings
bind pager j next-line
bind pager k previous-line
-macro index,pager S s=.spam
+# Is C++ the worst language? Yes.
+# terminate called after throwing an instance of 'std::runtime_error'
+# what(): locale::facet::_S_create_c_locale name not valid
+# Aborted (core dumped)
+macro index a '<pipe-message>LC_ALL=C rspamc learn_ham<enter><save-message>=.Archive<enter>y'
+macro index,pager S '<pipe-message>LC_ALL=C rspamc learn_spam<enter><save-message>=.spam<enter>y'
+macro index,pager P '<pipe-message>LC_ALL=C rspamc learn_spam<enter><save-message>=.phishing<enter>y'
## Theme
color index cyan black ~O
@@ -76,6 +115,8 @@ color quoted7 green black
color error red black
+color body red black "@?lanodan"
+
# Patch file highlighting
# Based on https://www.redhat.com/archives/libvir-list/2012-July/msg01100.html
color body green black "^diff \-.*"