X-Git-Url: https://git.distorted.org.uk/~mdw/profile/blobdiff_plain/7f526fc6fe28b15c3bb4b4094c9d66a051999630..393e450ba47288aba552c230c60140f70197f545:/dot/gnus-local.el.distorted diff --git a/dot/gnus-local.el.distorted b/dot/gnus-local.el.distorted index d25a9ba..a05ed7b 100644 --- a/dot/gnus-local.el.distorted +++ b/dot/gnus-local.el.distorted @@ -36,7 +36,7 @@ "\\|" "evade\\.org\\.uk" "\\|" "fyvzl\\.net" "\\)$") . chiark-smtp) - ("@g\\(\\|oogle\\)mail\\.com$" . gmail-smtp)) + ("@g\\(oogle\\)?mail\\.com$" . gmail-smtp)) mdw-default-send-mail-method nil) ;;;-------------------------------------------------------------------------- @@ -93,9 +93,10 @@ "\\(" "$" "\\|" "\\s-" "\\)")) (defvar mdw-odin-splits nil) +(defvar mdw-odin-sender-alist nil) (defun mdw-update-odin-info () - (let ((splits nil)) + (let ((splits nil) (senders nil)) (with-temp-buffer (call-process "ssh" nil t nil "stratocaster" "userv" "odin" "mail" "list") @@ -106,17 +107,21 @@ (tag (match-string 2))) (push `(to ,(format "%s@odin\\.gg" local-part) ,(format "crap.%s" tag)) - splits))) + splits) + (push (cons tag local-part) senders))) (forward-line))) - (setq mdw-odin-splits (nreverse splits)))) + (setq mdw-odin-splits (nreverse splits) + mdw-odin-sender-alist (nreverse senders)))) (mdw-update-odin-info) ;; Mail sent to `mdw-nospam-THING' should appear to come from this address. (setq gnus-posting-styles '(("^nnimap\\+distorted:crap\\." - (address (concat "mdw-nospam-" - (substring gnus-newsgroup-name (match-end 0)) - "@distorted.org.uk"))) + (address (let* ((mailbox (substring gnus-newsgroup-name + (match-end 0))) + (entry (assoc mailbox mdw-odin-sender-alist))) + (if entry (concat (cdr entry) "@odin.gg") + (concat "mdw-nospam-" mailbox "@distorted.org.uk"))))) ("^nnimap\\+[^:]+-chiark:" ("X-mdw-Send-Mail" "chiark-smtp")) ("^nnimap\\+google:" @@ -150,7 +155,7 @@ ;; Mailing lists, not split out earlier. (to "python-list@python\\.org" "lists.python") (to ,(concat "\\(jump-\\(announce\\|discuss\\)\\)@" - "\\(lists\\.\\|\\)" "jump\\.net\\.uk") + "\\(lists\\.\\)?" "jump\\.net\\.uk") "lists.\\1") (to "cambridgecryptowhiskyclub@gmail\\.com" "lists.cambridge-crypto-whisky") @@ -183,20 +188,21 @@ ;; Other splits I've not given a per-sender address. (from "@\\(.*\\.\\)?lovefilm\\.com\\>" "crap.lovefilm" t) - (from "@\\(\\|.*\\.\\)amazon\\." "crap.amazon" t) + (from "@\\(.*\\.\\)?amazon\\." "crap.amazon" t) (from "@cineworldmail\\.com\\>" "crap.cineworld" t) (from "@picturehouses\\.co\\.uk\\>" "crap.picturehouse" t) (from "@nationwide" "crap.nationwide" t) (from "nationwide@securesuiteemail\\.com\\>" "crap.nationwide" t) - (from "@news\\.spotifymail\\.com\\>" "crap.spotify" t) + (from "@\\(.*\\.\\)?spotify\\(mail\\)?\\.com\\>" "crap.spotify" t) (from "@action\\.openrightsgroup\\.org\\>" "crap.org" t) (from "unlimited@cineworld\\.com\\>" "crap.cineworld" t) (from "@tshirthell\\.com\\>" "crap.tshirt-hell" t) (from "campaigns@jolla\\.com\\>" "crap.jolla" t) (from "@thomann\\.de\\>" "crap.thomann" t) (from "@wikimedia\\.org\\>" "crap.wikimedia" t) - (from "@gandi\\.net\\>" "crap.gandi" t) + (from "@\\(.*\\.\\)?gandi\\.net\\>" "crap.gandi" t) (from "@mythic-beasts\\.com\\>" "crap.mythic-beasts" t) + (from "@accounts\\.google\\.com\\>" "crap.google" t) ;; Default. "mail.misc"))