diff --git a/config.el b/config.el index 0756fd7..b83bb1c 100644 --- a/config.el +++ b/config.el @@ -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"