;;; -*- lexical-binding: t -*- (require 'cl-lib) (cl-pushnew "." load-path :test #'string=) (cl-pushnew (file-name-concat ".." "ll") load-path :test #'string=) (require 'll) (-> 'gnus) (-> 'gnus-score) (-> 'gnus-sum) (-> 'buc) (-> 'll-switch-to-buffer-regexp) (defun gnus-summary-downscore-subject () (i) (let ((hdr "subject")) (gnus-summary-score-entry hdr (gnus-summary-header hdr) 'e -1000 (@f "%d-01-01" (1+ (string-to-number (format-time-string "%Y"))))))) (defalias 'gs #'gnus-summary-downscore-subject) (defun gnus-switch-to-group-buffer () (i) (if (gnus-alive-p) (switch-to-buffer gnus-group-buffer) (gnus))) (defun gnus-summary-exit-and-save-all () (i) (when-let* ((summary-buf-names (cl-remove-if-not (L (b) (string-match-p "*Summary" b)) (buffer-names)))) (dolist (b summary-buf-names) (kill-buffer b)) (gnus-summary-save-newsrc))) (<- 'group-summary)