Subject: Re: bug#31325: 27.0.50; PROPOSAL: introduce a new function to recenter without redisplaying the frame

From: Eli Zaretskii <[email-masked]>
Date: Mon, 02 Jul 2018 18:22:44 +0300

> From: John Shahid <[email-masked]>
> Cc: [email-masked], [email-masked], [email-masked]
> Date: Sun, 01 Jul 2018 18:58:09 +0000
> 
> >From 3ac3d2d5f60593776563e27d4b406b2776de9b96 Mon Sep 17 00:00:00 2001
> From: John Shahid <[email-masked]>
> Date: Sun, 1 Jul 2018 14:48:24 -0400
> Subject: [PATCH] Keep `recenter' behavior backward compatible when called
>  interactively
> 
> * window.c (recenter): Change the interactive spec to always pass a
>   non-nil value to the REDISPLAY argument when called interactively.
> * window.el (recenter-top-bottom): Make sure recenter's second
>   argument is non-nil everywhere.
> * windows.texi (Textual Scrolling): Edit documentation of `recenter'.

Bug number is missing.  Also, we prefer to quite in documentation (as
opposed to doc strings) 'like this', not `like this'.

> --- a/doc/lispref/windows.texi
> +++ b/doc/lispref/windows.texi
> @@ -4154,7 +4154,8 @@ Textual Scrolling
>  @code{recenter} puts the line containing point in the middle of the
>  window.  If @var{count} is @code{nil} and @var{redisplay} is
>  non-@code{nil}, this function may redraw the frame, according to the
> -value of @code{recenter-redisplay}.
> +value of @code{recenter-redisplay}. Interactive calls pass non-‘nil’
> +for @var{redisplay}.              ^^

Two spaces between sentences.

> -DEFUN ("recenter", Frecenter, Srecenter, 0, 2, "P",
> +DEFUN ("recenter", Frecenter, Srecenter, 0, 2, "P\np",
>         doc: /* Center point in selected window and maybe redisplay frame.
>  With a numeric prefix argument ARG, recenter putting point on screen line ARG
>  relative to the selected window.  If ARG is negative, it counts up from the
> @@ -5910,7 +5910,7 @@ non-nil, also erase the entire frame and redraw it (when
>  `auto-resize-tool-bars' is set to `grow-only', this resets the
>  tool-bar's height to the minimum height needed); if
>  `recenter-redisplay' has the special value `tty', then only tty frames
> -are redrawn.
> +are redrawn.  Interactive calls pass non-nil for REDISPLAY.

I think this text is slightly more clear:

  Interactively, REDISPLAY is always non-nil.

Thanks.