From e0e6b853649963212461051a6a4dd51c576446f8 Mon Sep 17 00:00:00 2001 From: jao Date: Fri, 25 Feb 2022 22:04:42 +0000 Subject: gnus tweaks, but it seems hopeless --- gnus.org | 192 ++++++++++++++++++++++++++++++++------------------------------- 1 file changed, 99 insertions(+), 93 deletions(-) diff --git a/gnus.org b/gnus.org index eb8dfe3..eb41596 100644 --- a/gnus.org +++ b/gnus.org @@ -56,7 +56,7 @@ * Looks *** Verbosity #+begin_src emacs-lisp - (setq gnus-verbose 10) + (setq gnus-verbose 4) #+end_src *** Geometry #+begin_src emacs-lisp @@ -120,7 +120,9 @@ (setq gnus-search-use-parsed-queries t gnus-search-notmuch-raw-queries-p nil gnus-fetch-old-headers nil - gnus-fetch-old-ephemeral-headers nil) + gnus-fetch-old-ephemeral-headers nil + gnus-permanently-visible-groups "^nnselect:.*today" + gnus-search-ignored-newsgroups "nndraft.*\\|nnselect.*") (with-eval-after-load "gnus-search" (add-to-list 'gnus-search-expandable-keys "list") @@ -136,6 +138,8 @@ (remove-prefix ,prefix) (config-file ,config)))) + (add-to-list 'gnus-parameters '("^nnselect:.*" (nnselect-rescan t))) + #+end_src * News server #+begin_src emacs-lisp @@ -153,26 +157,27 @@ gnus-save-newsrc-file nil) ; .newsrc only needed by other newsreaders #+end_src * Local mail -*** nnml +*** nnmail params #+begin_src emacs-lisp - (setq mail-sources (when jao-gnus-use-nnml - '((file :path "/var/mail/jao") - (maildir :path "~/tmp/mail/spam/") - (maildir :path "~/tmp/mail/trash/"))) - gnus-message-archive-group nil) - - (setq nnml-get-new-mail t - nnmail-treat-duplicates 'delete + (setq nnmail-treat-duplicates 'delete nnmail-scan-directory-mail-source-once nil nnmail-cache-accepted-message-ids t nnmail-message-id-cache-length 100000 nnmail-split-fancy-with-parent-ignore-groups nil nnmail-use-long-file-names t - nnmail-crosspost t) - - (setq nnmail-resplit-incoming t + nnmail-crosspost t + nnmail-resplit-incoming t nnmail-mail-splitting-decodes t - nnmail-split-methods 'nnmail-split-fancy + nnmail-split-methods 'nnmail-split-fancy) + #+end_src +*** nnml + #+begin_src emacs-lisp + (setq mail-sources (when jao-gnus-use-nnml + '((file :path "/var/mail/jao") + (maildir :path "~/tmp/mail/spam/") + (maildir :path "~/tmp/mail/trash/"))) + gnus-message-archive-group nil + nnml-get-new-mail t nnml-directory message-directory) (when jao-gnus-use-nnml @@ -188,13 +193,89 @@ (dolist (dir '("jao" "bigml" "feeds")) (jao-gnus-nnml--add-maildirs dir))) + (defvar jao-gnus-image-groups '("xkcd")) + + (defvar jao-gnus-nnml-group-params + `(("nnml:\\(local\\|trash\\|spam\\)" + (auto-expire . t) + (total-expire . t) + (expiry-wait . 1) + (expiry-target . delete)) + ("nnml:jao\\..*" + (posting-style ("Bcc" "proton@jao.io") + ("Gcc" "nnml:jao.trove")) + (jao-gnus--trash-group "nnml:trash") + (jao-gnus--spam-group "nnml:spam") + (jao-gnus--archiving-group "nnml:jao.trove")) + ("nnml:\\(jao\\|bigml\\)\\.\\(trash\\|spam\\)" + (gcc-self . nil) + (auto-expire . t) + (total-expire . t) + (expiry-wait . 1) + (jao-gnus--trash-group nil) + (expiry-target . delete)) + ("nnml:bigml\\..*" + (posting-style (address "jao@bigml.com")) + (jao-gnus--trash-group "nnml:trash") + (jao-gnus--spam-group "nnml:spam") + (jao-gnus--archiving-group "nnml:bigml.trove")) + ("nnml:bigml\\.inbox" + (gcc-self . t) + (auto-expire . t) + (total-expire . t) + (expiry-wait . 7) + (expiry-target . "nnml:bigml.trove")) + ("nnml:bigml\\.trove" + (auto-expire . t) + (total-expire . t) + (expiry-target . delete) + (expiry-wait . 365)) + (,(format "^nnml:bigml\\.%s" (regexp-opt '("support" "reports" + "deploys" "lists" + "drivel" "bugs"))) + (jao-gnus--trash-group nil) + (gcc-self . nil) + (auto-expire . t) + (total-expire . t) + (expiry-wait . 3) + (expiry-target . delete)) + ("nnml:jao\\.drivel" + (auto-expire . t) + (total-expire . t) + (expiry-wait . 3) + (expiry-target . delete)) + ("nnml:feeds\\.\\(.*\\)" + (auto-expire . t) + (total-expire . t) + (expiry-wait . 7) + (expiry-target . delete) + (comment . "feeds.\\1") + (jao-gnus--archiving-group "nnml:feeds.trove")) + ("^nnml:feeds\\.\\(news\\)$" (expiry-wait . 2)) + ("^nnml:feeds\\.erlang" (gnus-list-identifiers "Erlang Forums")) + ("nnml:feeds\\.trove" + (auto-expire . nil) + (total-expire . nil)) + (,(format "nnml:feeds\\.fun\\|gwene\\..*%s.*" + (regexp-opt jao-gnus-image-groups)) + (mm-html-inhibit-images nil) + (mm-html-blocked-images nil)) + ("\\(gmane\\|gwene\\)\\..*" + (jao-gnus--archiving-group "nnml:feeds.trove") + (posting-style (address "jao@gnu.org"))))) + + (when jao-gnus-use-nnml + (dolist (p jao-gnus-nnml-group-params) + (add-to-list 'gnus-parameters p t))) + #+end_src *** maildirs #+begin_src emacs-lisp (when jao-gnus-use-maildirs (add-to-list 'gnus-secondary-select-methods - `(nnmaildir "" (directory "~/var/mail/") + `(nnmaildir "mail" + (directory "~/var/mail/") ,(jao-gnus--notmuch-engine "~/var/mail/" "~/.notmuch-config")))) @@ -334,7 +415,8 @@ * Groups buffer #+begin_src emacs-lisp ;; (setq gnus-group-line-format " %m%S%p%P:%~(pad-right 35)c %3y %B\n") - (setq gnus-group-line-format " %m%S%p%3y%P%* %~(pad-right 30)C %B\n") + ;; (setq gnus-group-line-format " %m%S%p%3y%P%* %~(pad-right 30)C %B\n") + (setq gnus-group-line-format " %m%S%p%3y%P%* %~(pad-right 30)c %B\n") (setq gnus-topic-line-format "%i[ %(%{%n%}%) -- %A ]%v\n") (setq gnus-group-uncollapsed-levels 2) (setq gnus-auto-select-subject 'unread) @@ -387,82 +469,6 @@ (with-eval-after-load "jao-afio" (add-hook 'jao-afio-switch-hook #'jao-gnus--first-group)) #+end_src -* Group parameters - #+begin_src emacs-lisp - (setq gnus-permanently-visible-groups "^nnselect:.*today") - - (defvar jao-gnus-image-groups '("xkcd")) - - (setq gnus-parameters - `(("nnml:\\(local\\|trash\\|spam\\)" - (auto-expire . t) - (total-expire . t) - (expiry-wait . 1) - (expiry-target . delete)) - ("nnml:jao\\..*" - (posting-style ("Bcc" "proton@jao.io") - ("Gcc" "nnml:jao.trove")) - (jao-gnus--trash-group "nnml:trash") - (jao-gnus--spam-group "nnml:spam") - (jao-gnus--archiving-group "nnml:jao.trove")) - ("nnml:\\(jao\\|bigml\\)\\.\\(trash\\|spam\\)" - (gcc-self . nil) - (auto-expire . t) - (total-expire . t) - (expiry-wait . 1) - (jao-gnus--trash-group nil) - (expiry-target . delete)) - ("nnml:bigml\\..*" - (posting-style (address "jao@bigml.com")) - (jao-gnus--trash-group "nnml:trash") - (jao-gnus--spam-group "nnml:spam") - (jao-gnus--archiving-group "nnml:bigml.trove")) - ("nnml:bigml\\.inbox" - (gcc-self . t) - (auto-expire . t) - (total-expire . t) - (expiry-wait . 7) - (expiry-target . "nnml:bigml.trove")) - ("nnml:bigml\\.trove" - (auto-expire . t) - (total-expire . t) - (expiry-target . delete) - (expiry-wait . 365)) - (,(format "^nnml:bigml\\.%s" (regexp-opt '("support" "reports" - "deploys" "lists" - "drivel" "bugs"))) - (jao-gnus--trash-group nil) - (gcc-self . nil) - (auto-expire . t) - (total-expire . t) - (expiry-wait . 3) - (expiry-target . delete)) - ("nnml:jao\\.drivel" - (auto-expire . t) - (total-expire . t) - (expiry-wait . 3) - (expiry-target . delete)) - ("nnml:feeds\\.\\(.*\\)" - (auto-expire . t) - (total-expire . t) - (expiry-wait . 7) - (expiry-target . delete) - (comment . "feeds.\\1") - (jao-gnus--archiving-group "nnml:feeds.trove")) - ("^nnml:feeds\\.\\(news\\)$" (expiry-wait . 2)) - ("^nnml:feeds\\.erlang" (gnus-list-identifiers "Erlang Forums")) - ("nnml:feeds\\.trove" - (auto-expire . nil) - (total-expire . nil)) - (,(format "nnml:feeds\\.fun\\|gwene\\..*%s.*" - (regexp-opt jao-gnus-image-groups)) - (mm-html-inhibit-images nil) - (mm-html-blocked-images nil)) - ("\\(gmane\\|gwene\\)\\..*" - (jao-gnus--archiving-group "nnml:feeds.trove") - (posting-style (address "jao@gnu.org"))))) - - #+end_src * Summary buffer *** Configuration #+begin_src emacs-lisp -- cgit v1.2.3