summary refs log tree commit diff stats
path: root/gnus.el
blob: d211f70c30983789725428ea936f7ed14d38f632 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
;;; gnus.el -*- lexical-binding: t; coding: utf-8-unix -*-

;; Author: Case Duckworth <acdw@acdw.net>
;; 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:

;; https://github.com/redguardtoo/mastering-emacs-in-one-year-guide/blob/master/gnus-guide-en.org

;; searching (?)
(require 'nnir)

;; contacts
(setup (:straight bbdb)
  (require 'bbdb)
  (bbdb-initialize 'message 'gnus 'sendmail)
  (add-hook 'gnus-startup-hook 'bbdb-insinuate-gnus)
  (:option bbdb/mail-auto-create-p t
           bbdb/news-auto-create-p t))

;; select methods
(setq gnus-select-method '(nnimap "fastmail"
                                  (nnimap-address "imap.fastmail.com")
                                  (nnimap-server-port 993)
                                  (nnimap-stream ssl)
                                  (nnir-search-engine imap)))

;; 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)