feat(mu4e): unread bookmarks, better thread UI, cursor on subject

This commit is contained in:
2026-02-24 11:20:45 +01:00
parent c804fc2dfe
commit 2bead842b6

View File

@@ -621,10 +621,46 @@ and optional priority indicator [#A]."
mu4e-headers-include-related t
mu4e-use-fancy-chars t
mu4e-headers-mark-for-thread t
mu4e-headers-fields '((:human-date . 12)
(:flags . 6)
(:from . 22)
(:subject))))
mu4e-headers-fields '((:human-date . 12)
(:flags . 6)
(:from-or-to . 25)
(:subject))
;; Sort: newest first
mu4e-headers-sort-field :date
mu4e-headers-sort-direction 'descending
;; Thread prefixes — fancy Unicode
mu4e-headers-thread-single-orphan-prefix '("─>" . "─▶ ")
mu4e-headers-thread-orphan-prefix '("┬>" . "┬▶ ")
mu4e-headers-thread-connection-prefix '("" . "")
mu4e-headers-thread-first-child-prefix '("├>" . "├▶ ")
mu4e-headers-thread-last-child-prefix '("└>" . "└▶ ")
mu4e-headers-thread-duplicate-prefix '("=" . ""))
;; Bookmarks — unread first
(setq mu4e-bookmarks
'((:name "Unread" :query "flag:unread" :key ?u)
(:name "Inbox" :query "maildir:/personal/INBOX" :key ?i)
(:name "Today" :query "date:today" :key ?t)
(:name "Week" :query "date:7d..now" :key ?w)))
;; Maildir shortcuts
(setq mu4e-maildir-shortcuts
'(("/personal/INBOX" . ?i)
("/personal/Sent" . ?s)
("/personal/Trash" . ?t)
("/personal/Archive" . ?a)))
;; Cursor on subject column after j/k navigation
(defun my/mu4e-goto-subject (&rest _)
"Move cursor to the subject column in mu4e headers."
(when (derived-mode-p 'mu4e-headers-mode)
(beginning-of-line)
(let ((offset 0))
(catch 'found
(dolist (field mu4e-headers-fields)
(if (eq (car field) :subject)
(throw 'found nil)
(setq offset (+ offset (or (cdr field) 0) 1)))))
(forward-char offset))))
(advice-add 'mu4e-headers-next :after #'my/mu4e-goto-subject)
(advice-add 'mu4e-headers-prev :after #'my/mu4e-goto-subject))
(after! mu4e
(setq sendmail-program "msmtp"