X-Git-Url: https://git.distorted.org.uk/~mdw/profile/blobdiff_plain/9961661f9166cb6cdc617240951b2b091cc99d12..f0532130cdae1355e3d222ee40a5942351a040ff:/dot/gnus.el diff --git a/dot/gnus.el b/dot/gnus.el index 6c6f4c5..be92db7 100644 --- a/dot/gnus.el +++ b/dot/gnus.el @@ -105,6 +105,36 @@ " "))) (add-hook 'gnus-article-mode-hook #'mdw-gnus-article-setup) +;; Don't expire articles on selection if they're alread read. This provides +;; a handy way to prevent expiry, and actually forcing expiry isn't +;; significantly harder. +(remove-hook 'gnus-mark-article-hook + 'gnus-summary-mark-read-and-unread-as-read) +(add-hook 'gnus-mark-article-hook 'gnus-summary-mark-unread-as-read) + +;; Leave an oubliette level 7 for broken things which look like mailboxes. +;; Otherwise Gnus keeps on resurrecting them and later realising that they're +;; bogus. +(setq gnus-level-unsubscribed 6) + +;; Reconfigure the `nnmail-split-fancy' syntax table to be less mad. +(setq nnmail-split-fancy-syntax-table + (let ((table (make-syntax-table))) + + ;; This is from upstream. I don't know what it's for. + (modify-syntax-entry ?% "." table) + + ;; Email addresses are often wrapped in `<...>', so don't consider + ;; those to be part of the address. + (modify-syntax-entry ?< "(>" table) + (modify-syntax-entry ?> ")<" table) + + ;; Email addresses definitely contain `.'. + (modify-syntax-entry ?. "_" table) + + ;; Done. + table)) + ;;;-------------------------------------------------------------------------- ;;; Magic for sending mail the correct way.