X-Git-Url: https://git.distorted.org.uk/~mdw/profile/blobdiff_plain/24da418485641fe2bb7be447ccbc858a9d789aac..f9ef6491562402b9c3ca467ac247985c58e8e4f4:/dot/gnus.el diff --git a/dot/gnus.el b/dot/gnus.el index 2aa71d3..be92db7 100644 --- a/dot/gnus.el +++ b/dot/gnus.el @@ -36,7 +36,9 @@ ;; Display a slrn-like tree view in the summary window. (setq gnus-use-trees nil) -(setq gnus-summary-line-format "%U%R%z%4L %(%[%-16,16f%]%): %B %s\n") +(setq gnus-summary-make-false-root 'dummy) +(setq gnus-summary-line-format "%U%R%z%4L %(%[%-16,16f%]%): %B %s\n" + gnus-summary-dummy-line-format " %(%[----------------%]%): * %S\n") (setq gnus-sum-thread-tree-root ">" gnus-sum-thread-tree-false-root ">" gnus-sum-thread-tree-single-indent "=" @@ -103,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.