From 9af5239971df315d1403733eb1e38039375ffdc9 Mon Sep 17 00:00:00 2001 From: jao Date: Thu, 30 Jun 2022 15:30:17 +0100 Subject: notmuch nits --- attic/misc.el | 47 ++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 44 insertions(+), 3 deletions(-) (limited to 'attic/misc.el') diff --git a/attic/misc.el b/attic/misc.el index a872ce7..e394490 100644 --- a/attic/misc.el +++ b/attic/misc.el @@ -1,4 +1,4 @@ -;;;; ace window +;;; ace window (use-package ace-window :ensure t :demand t @@ -27,7 +27,7 @@ ("M-O" . ace-swap-window) ("C-x 4 t" . ace-swap-window))) -;;;; sway +;;; sway (defun jao-swaymsg (msg) (shell-command (format "swaymsg '%s' >/dev/null" msg))) @@ -76,7 +76,7 @@ (defalias 'x-change-window-property #'ignore) (add-hook 'after-init-hook #'jao-sway-enable)) -;;;; time display +;;; time display (setq display-time-world-list '(("Europe/Paris" "Barcelona") ("America/Los_Angeles" "Los Angeles") @@ -122,3 +122,44 @@ (message "%s = %s" v (format-time-string "%Y-%m-%d %H:%M:%S" (seconds-to-time (/ v 1000.0)))))) +;;; gnus bits + +(jao-transient-major-mode gnus-group + ["Search" + ("zc" "consult search" consult-notmuch) + ("zf" "consult folder search" jao-consult-notmuch-folder) + ("g" "gnus search" gnus-group-read-ephemeral-search-group)]) + +(defun jao-gnus-restart-servers () + (interactive) + (message "Restarting all servers...") + (gnus-group-enter-server-mode) + (gnus-server-close-all-servers) + (gnus-server-open-all-servers) + (gnus-server-exit) + (message "Restarting all servers... done")) + +;;;; delayed expiry +(defvar jao-gnus--expire-every 50) +(defvar jao-gnus--get-count (1+ jao-gnus--expire-every)) + +(defun jao-gnus-get-new-news (&optional arg) + (interactive "p") + (when (and jao-gnus--expire-every + (> jao-gnus--get-count jao-gnus--expire-every)) + (when jao-gnus-use-pm-imap (gnus-group-catchup "nnimap:pm/spam" t)) + (gnus-group-expire-all-groups) + (setq jao-gnus--get-count 0)) + (setq jao-gnus--get-count (1+ jao-gnus--get-count)) + (gnus-group-get-new-news (max (if (= 1 jao-gnus--get-count) 4 3) + (or arg 0)))) + +(define-key gnus-group-mode-map "g" 'jao-gnus-get-new-news) +(define-key gnus-group-mode-map "\C-x\C-s" #'gnus-group-save-newsrc) + +(defun jao-gnus--first-group () + (when (derived-mode-p 'gnus-group-mode) + (gnus-group-first-unread-group))) + +(with-eval-after-load "jao-afio" + (add-hook 'jao-afio-switch-hook #'jao-gnus--first-group)) -- cgit v1.2.3