X-Git-Url: https://git.shemshak.org/~bandali/configs/blobdiff_plain/a220fb5b7ed9e3cf55f0a85bbb11f0f264a0020b..8ab693f86a241e0531b22e04132290267a54e1ea:/.emacs.d/lisp/bandali-gnus.el diff --git a/.emacs.d/lisp/bandali-gnus.el b/.emacs.d/lisp/bandali-gnus.el index d26e4f9..5007abd 100644 --- a/.emacs.d/lisp/bandali-gnus.el +++ b/.emacs.d/lisp/bandali-gnus.el @@ -46,92 +46,101 @@ gnus-select-method '(nnnil "") gnus-secondary-select-methods - '((nnimap "shemshak" - (nnimap-stream plain) - (nnimap-address "127.0.0.1") - (nnimap-server-port 143) - (nnimap-authenticator plain) - (nnimap-user "bandali@shemshak.local")) - (nnimap "gnu" - (nnimap-stream plain) - (nnimap-address "127.0.0.1") - (nnimap-server-port 143) - (nnimap-authenticator plain) - (nnimap-user "bandali@gnu.local") - (nnimap-inbox "INBOX") - (nnimap-split-methods 'nnimap-split-fancy) - (nnimap-split-fancy (| - ;; (: gnus-registry-split-fancy-with-parent) - ;; (: gnus-group-split-fancy "INBOX" t "INBOX") - ;; keep debbugs emails in INBOX - (list ".*<\\(.*\\)\\.debbugs\\.gnu\\.org>.*" "INBOX") - ;; list moderation emails - (from ".+-\\(owner\\|bounces\\)@\\(non\\)?gnu\\.org" "listmod") - ;; gnu - (list ".*<\\(.*\\)\\.\\(non\\)?gnu\\.org>.*" "l.\\1") - ;; gnus - (list ".*<\\(.*\\)\\.gnus\\.org>.*" "l.\\1") - ;; libreplanet - (list ".*<\\(.*\\)\\.libreplanet\\.org>.*" "l.\\1") - ;; iana (e.g. tz-announce) - (list ".*<\\(.*\\)\\.iana\\.org>.*" "l.\\1") - ;; haskell - (list ".*<\\(.*\\)\\.haskell\\.org>.*" "l.\\1") - ;; *.lists.sr.ht, omitting one dot if present - ;; add more \\.?\\([^.]*\\) if needed - (list ".*<~\\(.*\\)/\\([^.]*\\)\\.?\\([^.]*\\)\\.lists\\.sr\\.ht>.*" "l.~\\1.\\2\\3") - ;; webmasters - (from "webmasters\\(-comment\\)?@gnu\\.org" "webmasters") - ;; other - ("subject" "nagios-fsf:.*" "nagios-fsf") - (list ".*atreus.freelists.org" "l.atreus") - (list ".*deepspec.lists.cs.princeton.edu" "l.deepspec") - ;; (list ".*haskell-art.we.lurk.org" "l.haskell.art") ;d - ;; (list ".*notmuch.notmuchmail.org" "l.notmuch") ;u - (list ".*dev.lists.parabola.nu" "l.parabola-dev") - ;; ---------------------------------- - ;; legend: (u)nsubscribed | (d)ead - ;; ---------------------------------- - ;; spam - ("X-Spam_action" "reject" "Junk") - ;; otherwise, leave mail in INBOX - "INBOX"))) - (nnimap "uwaterloo" - (nnimap-stream plain) - (nnimap-address "127.0.0.1") - (nnimap-server-port 143) - (nnimap-authenticator plain) - (nnimap-user "abandali@uwaterloo.local") - (nnimap-inbox "INBOX") - (nnimap-split-methods 'nnimap-split-fancy) - (nnimap-split-fancy (| - ;; (: gnus-registry-split-fancy-with-parent) - ;; se212-f19 - ("subject" "SE\\s-?212" "course.se212-f19") - (from "SE\\s-?212" "course.se212-f19") - ;; catch-all - "INBOX"))) - (nnimap "csc" - (nnimap-stream plain) - (nnimap-address "127.0.0.1") - (nnimap-server-port 143) - (nnimap-authenticator plain) - (nnimap-user "abandali@csclub.uwaterloo.local") - (nnimap-inbox "INBOX") - (nnimap-split-methods 'nnimap-split-fancy) - (nnimap-split-fancy (| - ;; cron reports and other messages from root - (from "root@\\(.*\\.\\)?csclub\\.uwaterloo\\.ca" "INBOX") - ;; spam - ("X-Spam-Flag" "YES" "Junk") - ;; catch-all - "INBOX"))) - (nnimap "sfl" - (nnimap-stream plain) - (nnimap-address "127.0.0.1") - (nnimap-server-port 143) - (nnimap-authenticator plain) - (nnimap-user "amin.bandali@savoirfairelinux.local"))) + `(,@(cond + ((string= (system-name) "langa") + '((nnimap + "shemshak" + (nnimap-stream plain) + (nnimap-address "127.0.0.1") + (nnimap-server-port 143) + (nnimap-authenticator plain) + (nnimap-user "bandali@shemshak.local")) + (nnimap + "gnu" + (nnimap-stream plain) + (nnimap-address "127.0.0.1") + (nnimap-server-port 143) + (nnimap-authenticator plain) + (nnimap-user "bandali@gnu.local") + (nnimap-inbox "INBOX") + (nnimap-split-methods 'nnimap-split-fancy) + (nnimap-split-fancy + (| + ;; (: gnus-registry-split-fancy-with-parent) + ;; (: gnus-group-split-fancy "INBOX" t "INBOX") + ;; keep debbugs emails in INBOX + (list ".*<\\(.*\\)\\.debbugs\\.gnu\\.org>.*" "INBOX") + ;; list moderation emails + (from ".+-\\(owner\\|bounces\\)@\\(non\\)?gnu\\.org" "listmod") + ;; gnu + (list ".*<\\(.*\\)\\.\\(non\\)?gnu\\.org>.*" "l.\\1") + ;; gnus + (list ".*<\\(.*\\)\\.gnus\\.org>.*" "l.\\1") + ;; libreplanet + (list ".*<\\(.*\\)\\.libreplanet\\.org>.*" "l.\\1") + ;; iana (e.g. tz-announce) + (list ".*<\\(.*\\)\\.iana\\.org>.*" "l.\\1") + ;; haskell + (list ".*<\\(.*\\)\\.haskell\\.org>.*" "l.\\1") + ;; *.lists.sr.ht, omitting one dot if present + ;; add more \\.?\\([^.]*\\) if needed + (list ".*<~\\(.*\\)/\\([^.]*\\)\\.?\\([^.]*\\)\\.lists\\.sr\\.ht>.*" "l.~\\1.\\2\\3") + ;; webmasters + (from "webmasters\\(-comment\\)?@gnu\\.org" "webmasters") + ;; other + ("subject" "nagios-fsf:.*" "nagios-fsf") + (list ".*atreus.freelists.org" "l.atreus") + (list ".*deepspec.lists.cs.princeton.edu" "l.deepspec") + ;; (list ".*haskell-art.we.lurk.org" "l.haskell.art") ;d + ;; (list ".*notmuch.notmuchmail.org" "l.notmuch") ;u + (list ".*dev.lists.parabola.nu" "l.parabola-dev") + ;; ---------------------------------- + ;; legend: (u)nsubscribed | (d)ead + ;; ---------------------------------- + ;; spam + ("X-Spam_action" "reject" "Junk") + ;; otherwise, leave mail in INBOX + "INBOX"))) + (nnimap + "uwaterloo" + (nnimap-stream plain) + (nnimap-address "127.0.0.1") + (nnimap-server-port 143) + (nnimap-authenticator plain) + (nnimap-user "abandali@uwaterloo.local") + (nnimap-inbox "INBOX") + (nnimap-split-methods 'nnimap-split-fancy) + (nnimap-split-fancy + (| + ;; (: gnus-registry-split-fancy-with-parent) + ;; se212-f19 + ("subject" "SE\\s-?212" "course.se212-f19") + (from "SE\\s-?212" "course.se212-f19") + ;; catch-all + "INBOX"))) + (nnimap + "csc" + (nnimap-stream plain) + (nnimap-address "127.0.0.1") + (nnimap-server-port 143) + (nnimap-authenticator plain) + (nnimap-user "abandali@csclub.uwaterloo.local") + (nnimap-inbox "INBOX") + (nnimap-split-methods 'nnimap-split-fancy) + (nnimap-split-fancy + (| + ;; cron reports and other messages from root + (from "root@\\(.*\\.\\)?csclub\\.uwaterloo\\.ca" "INBOX") + ;; spam + ("X-Spam-Flag" "YES" "Junk") + ;; catch-all + "INBOX"))))) + ((string= (system-name) "jirud") + '((nnimap + "sfl" + (nnimap-stream tls) + (nnimap-address "mail.savoirfairelinux.com") + (nnimap-user "amin.bandali")))))) gnus-message-archive-group "nnimap+gnu:INBOX" gnus-parameters '(("l\\.deepspec" @@ -246,10 +255,10 @@ gnus-thread-sort-by-date)) ;; local key bindings (define-key gnus-summary-mode-map (kbd "M-L") #'org-store-link) - (define-key gnus-summary-mode-map (kbd "r") - #'gnus-summary-reply-with-original) - (define-key gnus-summary-mode-map (kbd "R") - #'gnus-summary-wide-reply-with-original) + ;; (define-key gnus-summary-mode-map (kbd "r") + ;; #'gnus-summary-reply-with-original) + ;; (define-key gnus-summary-mode-map (kbd "R") + ;; #'gnus-summary-wide-reply-with-original) (defvar b/gnus-summary-prefix-map) (define-prefix-command 'b/gnus-summary-prefix-map) (define-key gnus-summary-mode-map (kbd "v") @@ -282,8 +291,8 @@ jami:bandali") '((".*" (address "bandali@gnu.org") ("X-Message-SMTP-Method" "smtp fencepost.gnu.org 587")) - ("nnimap\\+gnu:l\\..*" - (signature nil)) + ;; ("nnimap\\+gnu:l\\..*" + ;; (signature nil)) ((header "subject" "ThankCRM") (to "webmasters-comment@gnu.org") (body "") @@ -324,14 +333,18 @@ jami:bandali") (with-eval-after-load 'gnus-topic (csetq gnus-topic-line-format "%i[ %A: %(%{%n%}%) ]%v\n" - gnus-topic-topology '(("Gnus" visible nil nil) - (("misc" visible nil nil)) - (("sfl" visible nil nil)) - (("csc" visible nil nil)) - (("uwaterloo" visible nil nil)) - (("shemshak" visible nil nil)) - (("gnu" visible nil nil)) - (("old-gnu" visible nil nil))))) + gnus-topic-topology + `(("Gnus" visible nil nil) + (("misc" visible nil nil)) + ,@(cond + ((string= (system-name) "jirud") + '((("sfl" visible nil nil)))) + ((string= (system-name) "langa") + '((("csc" visible nil nil)) + (("uwaterloo" visible nil nil)) + (("shemshak" visible nil nil)) + (("gnu" visible nil nil)) + (("old-gnu" visible nil nil)))))))) (with-eval-after-load 'gnus-agent (csetq gnus-agent-synchronize-flags 'ask)) @@ -345,11 +358,10 @@ jami:bandali") (with-eval-after-load 'gnus-dired (add-hook 'dired-mode-hook 'gnus-dired-mode)) -;; (with-eval-after-load 'gnus-utils -;; (csetq gnus-completing-read-function 'gnus-ido-completing-read)) - (with-eval-after-load 'mm-decode - (csetq mm-discouraged-alternatives '("text/html" "text/richtext") + (csetq ;; mm-attachment-override-types `("text/x-diff" "text/x-patch" + ;; ,@mm-attachment-override-types) + mm-discouraged-alternatives '("text/html" "text/richtext") mm-decrypt-option 'known mm-verify-option 'known)) @@ -363,11 +375,5 @@ jami:bandali") (csetq mml-secure-openpgp-encrypt-to-self t mml-secure-openpgp-sign-with-sender t)) -;; (require 'gnus-article-treat-patch) -;; ;; note: be sure to customize faces with `:foreground "white"' when -;; ;; using a theme with a white/light background :) -;; (setq ft/gnus-article-patch-conditions -;; '("^@@ -[0-9]+,[0-9]+ \\+[0-9]+,[0-9]+ @@")) - (provide 'bandali-gnus) ;;; bandali-gnus.el ends here