diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2022-07-19 22:53:49 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2022-07-20 10:10:42 -0700 |
commit | b326984149d1537311d6b41441460d2ba5fee591 (patch) | |
tree | 2c2c4078f4337955460072f38c222d96becdffa5 | |
parent | 560f42f4c7923c3f9fceba2ae9c119bee88a586b (diff) | |
download | dotfiles-b326984149d1537311d6b41441460d2ba5fee591.tar.gz |
make 'd' more consistent between processing and non-processing views
-rw-r--r-- | .emacs.d/init.el | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/.emacs.d/init.el b/.emacs.d/init.el index 2713f8bb..990bd720 100644 --- a/.emacs.d/init.el +++ b/.emacs.d/init.el @@ -3076,18 +3076,17 @@ mutt's review view, after exiting EDITOR." (error "This group/range may contain articles from processing views")))) (advice-add 'gnus-summary-catchup :before #'spw/guard-gnus-summary-catchup) -(defun spw/gnus-summary-mark-as-read-forward () - (interactive) - (if (not (or (spw/gnus-summary-processing-view-p) - (spw/check-group-process-view-ids - (gnus-summary-header "message-id")))) - (call-interactively #'gnus-summary-mark-as-read-forward) - ;; We want an 'R' mark, not 'r'. +(defun spw/gnus-summary-mark-as-read-forward (n) + (interactive "p") + (let* ((processing-p (or (spw/gnus-summary-processing-view-p) + (spw/check-group-process-view-ids + (gnus-summary-header "message-id")))) + (mark (if processing-p gnus-read-mark gnus-del-mark))) + (when processing-p (setq n 1)) (gnus-set-global-variables) (if (not (get-buffer-window gnus-article-buffer t)) - (gnus-summary-mark-forward 1 gnus-read-mark - gnus-inhibit-user-auto-expire) - (save-excursion (gnus-summary-mark-forward 1 gnus-read-mark)) + (gnus-summary-mark-forward n mark gnus-inhibit-user-auto-expire) + (save-excursion (gnus-summary-mark-forward n mark)) (gnus-summary-next-unread-article)))) (with-eval-after-load 'gnus-sum (define-key gnus-summary-mode-map [remap gnus-summary-mark-as-read-forward] |