;;; -*- lexical-binding: t -*- ;; ;; ----------------------------------------------------------------------------- (require 'cl-lib) (cl-pushnew (file-name-concat ".") load-path :test #'string=) (cl-pushnew (file-name-concat ".." "ll") load-path :test #'string=) (require 'luki-lisp) ;; ----------------------------------------------------------------------------- (-> 'gnus) (-> 'gnus-msg) (-> 'gnus-score) (-> 'gnus-start) (-> 'group) ;; ----------------------------------------------------------------------------- (setq gnus-always-read-dribble-file t) (setq gnus-inhibit-slow-scoring t) (setq gnus-suppress-duplicates t) (setq gnus-use-full-window nil) (setq gnus-default-directory "~/News") (setq message-syntax-checks '((existing-newsgroups . disabled) (sender . disabled))) ;; ----------------------------------------------------------------------------- (setq gnus-extra-headers '(Cc Followup-To Gcc Keywords Newsgroups To X-Spam-Flag)) (setq mail-abbrev-mode-regexp "^\\(\\(Newsgroups\\|Followup-To:\\)\\|\\(Resent-\\)?\\(To\\|From\\|Cc\\|Bcc\\|Reply-To\\)\\):") ;; ----------------------------------------------------------------------------- (setq gnus-select-method '(nntp "news.gmane.io")) (setq gnus-secondary-select-methods '((nntp "news.eternal-september.org") (nnimap "Mail" (nnimap-stream shell) (nnimap-shell-program "ssh incal@dataswamp.org /usr/local/libexec/dovecot/imap -o mail_location=maildir:~/Maildir/:LAYOUT=fs")) (nnml ""))) ;; ----------------------------------------------------------------------------- (setq gnus-check-new-newsgroups nil) (setq gnus-save-killed-list nil) ;; ----------------------------------------------------------------------------- ;; Gnus' .newsrc.eld, not other's .newsrc (setq gnus-read-newsrc-file nil) (setq gnus-save-newsrc-file nil) ;; ----------------------------------------------------------------------------- (setq gnus-inhibit-startup-message t) (setq gnus-interactive-exit 'quiet) ;; ----------------------------------------------------------------------------- (setq gnus-novice-user nil) (setq gnus-expert-user (! gnus-novice-user)) ;; ----------------------------------------------------------------------------- (setq gnus-verbose 1) ; [0, 10] with 1 = errors (setq gnus-verbose-backends gnus-verbose) ;; ----------------------------------------------------------------------------- (defun gnus-kill-if-runs () (when (gnus-alive-p) (gnus-group-exit))) ;; ----------------------------------------------------------------------------- (defun new-message (&optional force) (interactive "P") (if (or force (! (eq major-mode 'message-mode))) (progn (unless (gnus-alive-p) (gnus)) (gnus-post-news 'post "")) ($ "did nothing, %s to force" (substitute-command-keys "\\[universal-argument]")))) ;; ----------------------------------------------------------------------------- (<- 'gnus-incal) ;; -----------------------------------------------------------------------------