]> git.eshelyaron.com Git - emacs.git/commitdiff
Allow controlling whether SPC in Gnus goes to the next article
authorLars Ingebrigtsen <larsi@gnus.org>
Tue, 24 Nov 2020 08:27:14 +0000 (09:27 +0100)
committerLars Ingebrigtsen <larsi@gnus.org>
Tue, 24 Nov 2020 08:27:14 +0000 (09:27 +0100)
* doc/misc/gnus.texi (Summary Maneuvering): Document it.
* lisp/gnus/gnus-sum.el (gnus-paging-select-next): New variable.
(gnus-summary-prev-page, gnus-summary-next-page): Use it.

doc/misc/gnus.texi
etc/NEWS
lisp/gnus/gnus-sum.el

index 3f597455b7579b071bf4fe758b555304a9347ce5..81ce13945c12c81f37e785353cf56661726ec82f 100644 (file)
@@ -5361,6 +5361,15 @@ articles with the same subject, go to the first unread article.
 
 This variable is not particularly useful if you use a threaded display.
 
+@item gnus-paging-select-next
+@vindex gnus-paging-select-next
+Control whether to select the next/previous article when paging (with
+commands like @kbd{SPC} or @kbd{DEL}).  If non-@code{nil}, select the
+next article when reaching the end of the article (or the previous
+article when paging backwards).
+
+If @code{nil}, don't do anything at the end/start of the articles.
+
 @item gnus-summary-check-current
 @vindex gnus-summary-check-current
 If non-@code{nil}, all the ``unread'' movement commands will not proceed
index f3a75e4965cfa332dcde4415a8e80844784764cd..135452bc303bfea72a11ede9a892ab24e60f7115 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -481,6 +481,12 @@ tags to be considered as well.
 
 ** Gnus
 
++++
+*** New user option 'gnus-paging-select-next'.
+This controls what happens when using commands like `SPC' and `DEL' to
+page the current article.  If non-nil (the default), go to the
+next/prev article, but if nil, do nothing at the end/start of the article.
+
 +++
 *** New gnus-search library.
 A new unified search syntax which can be used across multiple
index 561f199531e44d9b424fb6379c27022371c22784..7444cab58cb248d3d52cd4134aae33bbd96d8c0e 100644 (file)
@@ -442,6 +442,15 @@ will go to the next group without confirmation."
                 (const slightly-quietly)
                 (sexp :menu-tag "on" t)))
 
+(defcustom gnus-paging-select-next t
+  "Control whether to select the next/prev article when paging.
+If non-nil, select the next article when reaching the end of the
+article (or the previous article when paging backwards).
+
+If nil, don't do anything at the end/start of the articles."
+  :group 'gnus-summary-maneuvering
+  :type 'boolean)
+
 (defcustom gnus-auto-select-same nil
   "If non-nil, select the next article with the same subject.
 If there are no more articles with the same subject, go to
@@ -7898,7 +7907,8 @@ Also see the variable `gnus-article-skip-boring'."
                   (gnus-message 3 "End of message"))
                  (circular
                   (gnus-summary-beginning-of-article))
-                 (lines
+                 ((or lines
+                      (not gnus-paging-select-next))
                   (gnus-message 3 "End of message"))
                  ((null lines)
                   (if (and (eq gnus-summary-goto-unread 'never)
@@ -7929,7 +7939,8 @@ the beginning of the buffer."
        (gnus-eval-in-buffer-window gnus-article-buffer
          (setq endp (gnus-article-prev-page lines)))
        (when (and move endp)
-         (cond (lines
+         (cond ((or lines
+                    (not gnus-paging-select-next))
                 (gnus-message 3 "Beginning of message"))
                ((null lines)
                 (if (and (eq gnus-summary-goto-unread 'never)