diff shared/gnus-init.el @ 3:0a81352bd7d0

catch up
author Henry S. Thompson <ht@inf.ed.ac.uk>
date Sat, 17 Sep 2022 11:01:40 +0100
parents 107d592c5f4a
children 18db20bcc65b
line wrap: on
line diff
--- a/shared/gnus-init.el	Mon Feb 08 12:29:18 2021 +0000
+++ b/shared/gnus-init.el	Sat Sep 17 11:01:40 2022 +0100
@@ -130,17 +130,18 @@
 	;(to "sdp-students" "sdp")
 	(to "fnlp-students" "fnlp")
 	;(from "fox@tardis\\.ed\\.ac\\.uk\\|s1505551" "fnlp")
-	(to "anlp-students" "anlp")
+	;(to "anlp-students" "anlp")
 	;(from "nbnotifications" "anlp")
 	;(: split-on-whole-field "Subject" "Re: MSc Project 18.*" "msc18")
-	(: split-on-whole-field "Subject" ".*FNLP.*" "fnlp")
+	(: split-on-whole-field "Subject" ".*\\(FNLP\\|100782021\\).*" "fnlp")
 	;(: split-on-whole-field "Subject" ".*SDP \\(MS .\\|final\\) evaluation" "sdpEval")
 	;(: split-on-whole-field "Subject" ".*[[]SDP[]] \\(Your evaluation\\|Evaluation deadline\\).*" "sdpEval")
 	;(: split-on-whole-field "Subject" ".*SDP.*" "sdp")
-	(: split-on-whole-field "Subject" ".*Welcome to ANLP, action needed.*" "anlp_github")
-	(: split-on-whole-field "Subject" ".*ANLP.*" "anlp")
-	(from "ANLP on Piazza" "anlp")
+	;(: split-on-whole-field "Subject" ".*Welcome to ANLP, action needed.*" "anlp_github")
+	;(: split-on-whole-field "Subject" ".*ANLP.*" "anlp")
+	;(from "ANLP on Piazza" "anlp")
 	;(from "FNLP on Piazza" "fnlp")
+	(from "ititov\\|v.dankers\\|m.m.lindemann" "fnlp")
 	;(from "no-reply@piazza.com" "anlp")
 	(: split-on-whole-field "Subject" ".*Personal Tutor.*" "tutees20")
 	(: split-on-whole-field "Subject" ".*Course Selection.*" "tutees20")
@@ -169,9 +170,9 @@
 	))
 
 (setq sms-list
-      '((from "s1513009@.*" "ug4_18");\\|s1536017\\(s1443062\\|s1679328
+      '(;(from "s1513009@.*" "ug4_18");\\|s1536017\\(s1443062\\|s1679328
 	;(from "Y.Chen-258@.*" "msc_19")
-	(from "\\(s1795066\\|s1825415\\|A.M.Magalhaes\\|T.Makino\\|S.Li-93\\|M.Maggiolo\\|ashe\\|Y.Li-242\\|E.J.Martin\\|K.Lohse\\|D.Li-28\\|S.D.Martin-1\\|K.Chen-35\\|J.Norris-3\\|S.Li-80\\|Y.Liu-236\\|J.Chen-114\\|Q.Zeng-3\\|Y.Liu-244\\|P.Guo-1\\|s1582739\\|B.Lun\\|X.Li-143\\|F.Li-17\\|K.R.Lu\\|Z.Li-86\\)@.*" "tutees18")
+	;(from "\\(s1795066\\|s1825415\\|A.M.Magalhaes\\|T.Makino\\|S.Li-93\\|M.Maggiolo\\|ashe\\|Y.Li-242\\|E.J.Martin\\|K.Lohse\\|D.Li-28\\|S.D.Martin-1\\|K.Chen-35\\|J.Norris-3\\|S.Li-80\\|Y.Liu-236\\|J.Chen-114\\|Q.Zeng-3\\|Y.Liu-244\\|P.Guo-1\\|s1582739\\|B.Lun\\|X.Li-143\\|F.Li-17\\|K.R.Lu\\|Z.Li-86\\)@.*" "tutees18")
 	(from "\\(s1895309\\|s1765180\\|s1764494\\|s1645474\\|s1953043\\|s1651774\\|s1732316\\|s1742667\\)@.*" "tutees20")
 	))
 
@@ -203,7 +204,7 @@
 	;(to "ding" "gnus")
 	;(to "dssslist" "dsssl")
 	;(to "TEI-L" "tei")
-	(to "\\(announcements\\|unicode\\)@unicode.org" "unicode")
+	(to "\\(announcements\\|unicode\\)@.*[.]unicode[.]org" "unicode")
 	;(to "squid-users@lists.squid-cache.org\\|squid-users@squid-cache.org"
 	;    "squid")
 	(to "exist-open" "exist")
@@ -272,21 +273,23 @@
 	(lambda (sres)
 	  (if (or (equal (car sres) "notSPAM")
 		  (equal (car sres) "waSPAM"))
-	      ;; documentation is wrong, no recursion,
-	      ;; so we do it ourselves :-(
-	      (nnmail-split-it ht-compiled-split)
-	    sres))
-	(| (: ad-spam "adverts")
-	   (: white-spam "waSPAM")
-	   ("X-Bogosity" "Yes.*"
-	    (| 
+		;; documentation is wrong, no recursion,
+		;; so we do it ourselves :-(
+		(nnmail-split-it ht-compiled-split)
+	      sres))
+	(| (to "ht\\+d@inf\\.ed\\.ac\\.uk" "_diary")
+	     (: ad-spam "adverts")
+	     (: split-on-whole-field "Subject" ".*=\\?UTF-8.*=[A-F][0-9]=.*\\?=.*" "slSPAM")
+	     (: white-spam "waSPAM")
+	     ("X-Bogosity" "Yes.*"
+	      (| 
 	       (From ".*ed\.ac\.uk" "edSPAM") ; NB From not from
 	       ("X-Spam-Score" "0" "boSPAM")
 	       "bfSPAM"))  
-	   (: split-on-whole-field "X-Spam-Level" "\\*\\*\\*\\*.*"
-	      "saSPAM")
-	   ("X-Spam-Status" "Yes.*" "saSPAM")
-	   "notSPAM")))
+	     (: split-on-whole-field "X-Spam-Level" "\\*\\*\\*\\*.*"
+		"saSPAM")
+	     ("X-Spam-Status" "Yes.*" "saSPAM")
+	     "notSPAM")))
 
 (setq gnus-show-mime t) ; stale
 (setq mml1991-use 'pgg
@@ -298,6 +301,19 @@
 
 (custom-set-faces)
 
+(defun straight-to-diary ()
+  (save-excursion
+    (gnus-group-goto-group "nnml+ht:_diary")
+    (gnus-group-select-group)
+    (while (gnus-summary-first-unread-article)
+      (let ((sco (get-buffer "*Shell Command Output*")))
+	(if sco
+	    (kill-buffer sco)))
+      (gnus-edit-and-move-to-diary '(16 . t)))
+    (gnus-summary-exit)
+    )
+  )
+
 (add-hook 'gnus-group-mode-hook 'gnus-topic-mode)
 
 (add-hook 'gnus-summary-mode-hook 'gnus-summary-mode-fun1)
@@ -387,7 +403,10 @@
 
 (add-hook 'gnus-get-new-news-hook (lambda () (setq ht-gnus-just-read nil)))
 (add-hook 'gnus-after-getting-new-news-hook
-	  (lambda () (message "%s" ht-gnus-just-read)))
+	  (lambda () (progn
+		       (message "%s" ht-gnus-just-read)
+		       (if (member "_diary" ht-gnus-just-read)
+			   (straight-to-diary)))))
 
 (add-hook 'nnml-prepare-save-mail-hook (function ht-gnus-note-save-to-group))