comparison 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
comparison
equal deleted inserted replaced
2:dd557432d846 3:0a81352bd7d0
128 ;(to "pellet-users" "pellet") 128 ;(to "pellet-users" "pellet")
129 (to "tkinter-discuss" "tkinter") 129 (to "tkinter-discuss" "tkinter")
130 ;(to "sdp-students" "sdp") 130 ;(to "sdp-students" "sdp")
131 (to "fnlp-students" "fnlp") 131 (to "fnlp-students" "fnlp")
132 ;(from "fox@tardis\\.ed\\.ac\\.uk\\|s1505551" "fnlp") 132 ;(from "fox@tardis\\.ed\\.ac\\.uk\\|s1505551" "fnlp")
133 (to "anlp-students" "anlp") 133 ;(to "anlp-students" "anlp")
134 ;(from "nbnotifications" "anlp") 134 ;(from "nbnotifications" "anlp")
135 ;(: split-on-whole-field "Subject" "Re: MSc Project 18.*" "msc18") 135 ;(: split-on-whole-field "Subject" "Re: MSc Project 18.*" "msc18")
136 (: split-on-whole-field "Subject" ".*FNLP.*" "fnlp") 136 (: split-on-whole-field "Subject" ".*\\(FNLP\\|100782021\\).*" "fnlp")
137 ;(: split-on-whole-field "Subject" ".*SDP \\(MS .\\|final\\) evaluation" "sdpEval") 137 ;(: split-on-whole-field "Subject" ".*SDP \\(MS .\\|final\\) evaluation" "sdpEval")
138 ;(: split-on-whole-field "Subject" ".*[[]SDP[]] \\(Your evaluation\\|Evaluation deadline\\).*" "sdpEval") 138 ;(: split-on-whole-field "Subject" ".*[[]SDP[]] \\(Your evaluation\\|Evaluation deadline\\).*" "sdpEval")
139 ;(: split-on-whole-field "Subject" ".*SDP.*" "sdp") 139 ;(: split-on-whole-field "Subject" ".*SDP.*" "sdp")
140 (: split-on-whole-field "Subject" ".*Welcome to ANLP, action needed.*" "anlp_github") 140 ;(: split-on-whole-field "Subject" ".*Welcome to ANLP, action needed.*" "anlp_github")
141 (: split-on-whole-field "Subject" ".*ANLP.*" "anlp") 141 ;(: split-on-whole-field "Subject" ".*ANLP.*" "anlp")
142 (from "ANLP on Piazza" "anlp") 142 ;(from "ANLP on Piazza" "anlp")
143 ;(from "FNLP on Piazza" "fnlp") 143 ;(from "FNLP on Piazza" "fnlp")
144 (from "ititov\\|v.dankers\\|m.m.lindemann" "fnlp")
144 ;(from "no-reply@piazza.com" "anlp") 145 ;(from "no-reply@piazza.com" "anlp")
145 (: split-on-whole-field "Subject" ".*Personal Tutor.*" "tutees20") 146 (: split-on-whole-field "Subject" ".*Personal Tutor.*" "tutees20")
146 (: split-on-whole-field "Subject" ".*Course Selection.*" "tutees20") 147 (: split-on-whole-field "Subject" ".*Course Selection.*" "tutees20")
147 ;(: split-on-whole-field "Subject" ".*Sutton Trust.*" "inf-recruit") 148 ;(: split-on-whole-field "Subject" ".*Sutton Trust.*" "inf-recruit")
148 (: split-on-whole-field "Subject" "mycron .*" "cron") 149 (: split-on-whole-field "Subject" "mycron .*" "cron")
167 ;(to "QuakerBYM" "quaker-b") 168 ;(to "QuakerBYM" "quaker-b")
168 ;(from "quaker-spectrum-approval" "quaker") 169 ;(from "quaker-spectrum-approval" "quaker")
169 )) 170 ))
170 171
171 (setq sms-list 172 (setq sms-list
172 '((from "s1513009@.*" "ug4_18");\\|s1536017\\(s1443062\\|s1679328 173 '(;(from "s1513009@.*" "ug4_18");\\|s1536017\\(s1443062\\|s1679328
173 ;(from "Y.Chen-258@.*" "msc_19") 174 ;(from "Y.Chen-258@.*" "msc_19")
174 (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") 175 ;(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")
175 (from "\\(s1895309\\|s1765180\\|s1764494\\|s1645474\\|s1953043\\|s1651774\\|s1732316\\|s1742667\\)@.*" "tutees20") 176 (from "\\(s1895309\\|s1765180\\|s1764494\\|s1645474\\|s1953043\\|s1651774\\|s1732316\\|s1742667\\)@.*" "tutees20")
176 )) 177 ))
177 178
178 (defalias 'tut20 (read-kbd-macro 179 (defalias 'tut20 (read-kbd-macro
179 "C-x o C-s < RET C-s @ C-b C-x C-x M-w C-x b gnus SPC RET C-s \"tutees20 RET C-r \\\\) RET \\\\| C-y C-a ESC ESC : nil RET ESC C-x M-x ht- 3*<backspace> set- ht SPC RET C-x C-s C-x b RET C-x o")) 180 "C-x o C-s < RET C-s @ C-b C-x C-x M-w C-x b gnus SPC RET C-s \"tutees20 RET C-r \\\\) RET \\\\| C-y C-a ESC ESC : nil RET ESC C-x M-x ht- 3*<backspace> set- ht SPC RET C-x C-s C-x b RET C-x o"))
201 (from "mailinglist@edinburghrc.co.uk" "erc") 202 (from "mailinglist@edinburghrc.co.uk" "erc")
202 (to "selenium-users" "selenium") 203 (to "selenium-users" "selenium")
203 ;(to "ding" "gnus") 204 ;(to "ding" "gnus")
204 ;(to "dssslist" "dsssl") 205 ;(to "dssslist" "dsssl")
205 ;(to "TEI-L" "tei") 206 ;(to "TEI-L" "tei")
206 (to "\\(announcements\\|unicode\\)@unicode.org" "unicode") 207 (to "\\(announcements\\|unicode\\)@.*[.]unicode[.]org" "unicode")
207 ;(to "squid-users@lists.squid-cache.org\\|squid-users@squid-cache.org" 208 ;(to "squid-users@lists.squid-cache.org\\|squid-users@squid-cache.org"
208 ; "squid") 209 ; "squid")
209 (to "exist-open" "exist") 210 (to "exist-open" "exist")
210 (list "ilcc-\\([a-zA-Z]+\\)" "ilcc-\\1") 211 (list "ilcc-\\([a-zA-Z]+\\)" "ilcc-\\1")
211 (to "ilcc" "ilcc") 212 (to "ilcc" "ilcc")
270 (setq nnmail-split-fancy 271 (setq nnmail-split-fancy
271 '(! 272 '(!
272 (lambda (sres) 273 (lambda (sres)
273 (if (or (equal (car sres) "notSPAM") 274 (if (or (equal (car sres) "notSPAM")
274 (equal (car sres) "waSPAM")) 275 (equal (car sres) "waSPAM"))
275 ;; documentation is wrong, no recursion, 276 ;; documentation is wrong, no recursion,
276 ;; so we do it ourselves :-( 277 ;; so we do it ourselves :-(
277 (nnmail-split-it ht-compiled-split) 278 (nnmail-split-it ht-compiled-split)
278 sres)) 279 sres))
279 (| (: ad-spam "adverts") 280 (| (to "ht\\+d@inf\\.ed\\.ac\\.uk" "_diary")
280 (: white-spam "waSPAM") 281 (: ad-spam "adverts")
281 ("X-Bogosity" "Yes.*" 282 (: split-on-whole-field "Subject" ".*=\\?UTF-8.*=[A-F][0-9]=.*\\?=.*" "slSPAM")
282 (| 283 (: white-spam "waSPAM")
284 ("X-Bogosity" "Yes.*"
285 (|
283 (From ".*ed\.ac\.uk" "edSPAM") ; NB From not from 286 (From ".*ed\.ac\.uk" "edSPAM") ; NB From not from
284 ("X-Spam-Score" "0" "boSPAM") 287 ("X-Spam-Score" "0" "boSPAM")
285 "bfSPAM")) 288 "bfSPAM"))
286 (: split-on-whole-field "X-Spam-Level" "\\*\\*\\*\\*.*" 289 (: split-on-whole-field "X-Spam-Level" "\\*\\*\\*\\*.*"
287 "saSPAM") 290 "saSPAM")
288 ("X-Spam-Status" "Yes.*" "saSPAM") 291 ("X-Spam-Status" "Yes.*" "saSPAM")
289 "notSPAM"))) 292 "notSPAM")))
290 293
291 (setq gnus-show-mime t) ; stale 294 (setq gnus-show-mime t) ; stale
292 (setq mml1991-use 'pgg 295 (setq mml1991-use 'pgg
293 mml2015-use 'pgg 296 mml2015-use 'pgg
294 mm-verify-option 'always) 297 mm-verify-option 'always)
295 298
296 (require 'mm-decode) 299 (require 'mm-decode)
297 (setq mm-automatic-display (remove "text/html" mm-automatic-display)) 300 (setq mm-automatic-display (remove "text/html" mm-automatic-display))
298 301
299 (custom-set-faces) 302 (custom-set-faces)
303
304 (defun straight-to-diary ()
305 (save-excursion
306 (gnus-group-goto-group "nnml+ht:_diary")
307 (gnus-group-select-group)
308 (while (gnus-summary-first-unread-article)
309 (let ((sco (get-buffer "*Shell Command Output*")))
310 (if sco
311 (kill-buffer sco)))
312 (gnus-edit-and-move-to-diary '(16 . t)))
313 (gnus-summary-exit)
314 )
315 )
300 316
301 (add-hook 'gnus-group-mode-hook 'gnus-topic-mode) 317 (add-hook 'gnus-group-mode-hook 'gnus-topic-mode)
302 318
303 (add-hook 'gnus-summary-mode-hook 'gnus-summary-mode-fun1) 319 (add-hook 'gnus-summary-mode-hook 'gnus-summary-mode-fun1)
304 320
385 401
386 (add-hook 'message-sent-hook (function whiten-recip)) 402 (add-hook 'message-sent-hook (function whiten-recip))
387 403
388 (add-hook 'gnus-get-new-news-hook (lambda () (setq ht-gnus-just-read nil))) 404 (add-hook 'gnus-get-new-news-hook (lambda () (setq ht-gnus-just-read nil)))
389 (add-hook 'gnus-after-getting-new-news-hook 405 (add-hook 'gnus-after-getting-new-news-hook
390 (lambda () (message "%s" ht-gnus-just-read))) 406 (lambda () (progn
407 (message "%s" ht-gnus-just-read)
408 (if (member "_diary" ht-gnus-just-read)
409 (straight-to-diary)))))
391 410
392 (add-hook 'nnml-prepare-save-mail-hook (function ht-gnus-note-save-to-group)) 411 (add-hook 'nnml-prepare-save-mail-hook (function ht-gnus-note-save-to-group))
393 412
394 (require 'gnus-art) 413 (require 'gnus-art)
395 414