From a2657993bad828af6743c68931a0e848bfcdec53 Mon Sep 17 00:00:00 2001 From: Case Duckworth Date: Sun, 21 Nov 2021 23:57:41 -0600 Subject: I DECLARE BANKRUPTCY ... 8 Didn't think to do this till pretty .. written, so here we are. --- gnus.el | 156 ---------------------------------------------------------------- 1 file changed, 156 deletions(-) delete mode 100644 gnus.el (limited to 'gnus.el') diff --git a/gnus.el b/gnus.el deleted file mode 100644 index 7a2cdc7..0000000 --- a/gnus.el +++ /dev/null @@ -1,156 +0,0 @@ -;;; gnus.el -*- lexical-binding: t; coding: utf-8-unix -*- - -;; Author: Case Duckworth <(rot13-string "npqj@npqj.arg")> -;; Created: Sometime during Covid-19, 2020 -;; Keywords: configuration -;; URL: https://tildegit.org/acdw/emacs - -;; This file is NOT part of GNU Emacs. - -;;; License: -;; Everyone is permitted to do whatever with this software, without -;; limitation. This software comes without any warranty whatsoever, -;; but with two pieces of advice: -;; - Don't hurt yourself. -;; - Make good choices. - -;;; Code: - -;;; Private files -(acdw/require-private) - -;;; Select Methods -(setq gnus-select-method '(nnnil "")) - -(add-hook 'gnus-started-hook - (defun gnus-startup@feed-setup () - (cond ((fboundp #'gnus/init-feed-list) - (gnus/init-feed-list)) - ((and (fboundp #'gnus/import-feed-list) - (file-exists-p (expand-file-name - "feeds.txt" user-emacs-directory))) - (gnus/import-feed-list (expand-file-name - "feeds.txt" user-emacs-directory))) - (t (message "Oops, no feeds :/"))))) - -;;; Gnus cloud -(setq gnus-cloud-storage-method nil ; Don't always have GPG or gzip - gnus-cloud-covered-servers '("nntp:news.tilde.club" - "nntp:news.gwene.org" - "nntp:news.gmane.io")) -(add-hook 'gnus-started-hook #'gnus-cloud-download-all-data) -(add-hook 'gnus-exit-gnus-hook #'gnus-cloud-upload-all-data) - -;;; Gnus behavior options -(setq gnus-gcc-mark-as-read t - message-signature (or (file-exists-p message-signature-file) - "~ acdw") - gnus-startup-file (expand-file-name "newsrc" gnus-home-directory) - gnus-save-newsrc-file nil - gnus-read-newsrc-file nil - gnus-read-active-file 'some - gnus-always-read-dribble-file t - gnus-interactive-exit nil - gnus-use-cache t) - -;; Keybindings -(define-key gnus-group-mode-map (kbd "q") - (defun gnus-cloud-upload-and-bury-buffer () - (interactive) - (gnus-cloud-upload-all-data) - (bury-buffer))) -(define-key gnus-group-mode-map (kbd "Q") #'gnus-group-exit) -(define-key gnus-group-mode-map (kbd "C-q") #'gnus-group-quit) - -;;; Other parameters -(setq gnus-parameters - '(("fastmail.com:.*" - (display . 200) - (expiry-wait . immediate) - (expiry-target . "nnimap+fastmail.com:Archive")))) - -;;; Gnus UI options -(setq gnus-thread-sort-functions '(gnus-thread-sort-by-most-recent-date - (not gnus-thread-sort-by-number)) - gnus-use-cache t - gnus-summary-thread-gathering-function #'gnus-gather-threads-by-subject - gnus-thread-hide-subtree t - gnus-thread-ignore-subject t - gnus-html-frame-width fill-column) - -(when window-system - (setq gnus-sum-thread-tree-indent " ") - (setq gnus-sum-thread-tree-root "● ") - (setq gnus-sum-thread-tree-false-root "○ ") - (setq gnus-sum-thread-tree-single-indent "◎ ") - (setq gnus-sum-thread-tree-vertical "│") - (setq gnus-sum-thread-tree-leaf-with-other "├─ ") - (setq gnus-sum-thread-tree-single-leaf "╰─ ")) - -(setq gnus-summary-line-format - (concat - "%0{%U%R%z%}" - "%3{│%}" "%1{%d%}" "%3{│%}" ; date - " " - "%4{%-20,20f%}" ; name - " " - "%3{│%}" - " " - "%1{%B%}" - "%s\n")) - -(setq gnus-summary-display-arrow t) - -(add-hook 'gnus-group-mode-hook #'hl-line-mode) -(add-hook 'gnus-article-mode-hook #'acdw/reading-mode) - -;;; MIME types -(setq mm-discouraged-alternatives '("text/html" - "text/richtext")) - -(with-eval-after-load 'mailcap - (cond ((eq system-type 'darwin)) - ((eq system-type 'windows-nt)) - (t (mailcap-parse-mailcaps)))) - -;;; Composing mail -(add-hook 'message-mode-hook - (defun message-mode@setup () - (flyspell-mode +1) - (local-set-key (kbd "TAB") #'bbdb-complete-mail))) - -;;; Packages - -;; searching (?) -(require 'nnir) - -;; contacts -(setup (:straight bbdb) - (require 'bbdb) - (bbdb-initialize 'message 'gnus 'mail) - (bbdb-insinuate-message) - (add-hook 'gnus-startup-hook 'bbdb-insinuate-gnus) - (:option bbdb/gnus-summary-prefer-real-names t - bbdb/mail-auto-create-p t - bbdb/news-auto-create-p t - bbdb-use-pop-up t - bbdb-offer-save 1 - bbdb-update-records-p t)) - -;;; Functions -;; see https://wpc.io/blog/posts/bulk-import-rss-feeds-to-gnus-via-gwene.html -(defun gnus/slurp (file) - "Read FILE into a string." - (with-temp-buffer - (insert-file-contents file) - (buffer-substring-no-properties - (point-min) - (point-max)))) - -(defun gnus/import-feed-list (path) - "Import list of NNTP feeds from file at PATH." - (interactive "F") - (let ((feeds (split-string (gnus/slurp path) "\n" t))) - (cl-loop for feed in feeds - do (with-message (format "Subscribing to %s" feed) - (gnus-subscribe-group feed))))) -- cgit 1.4.1-21-gabe81