Subject: Re: bug#23347: 25.0.92; Follow mode scrolling broken -- scrolls only one page

From: Alan Mackenzie <[email-masked]>
Date: 24 Apr 2016 09:00:35 -0000

Hello, Anders.

In article <[email-masked]> you wrote:
> [-- text/plain, encoding quoted-printable, charset: UTF-8, 106 lines --]

> Hi!

> In Emacs 25.0.92, the command `follow-scroll-up' and `follow-scroll-down'
> only scroll one page. The intention is that they should scroll as many
> pages as there are windows in the window group (i.e. the number of windows
> showing the same buffer in the current frame, when follow-mode is enabled),
> as was done in Emacs 24.

It was me who constructed `follow-scroll-up/down' as they currently are.

It seemed "obvious" to me that scrolling one page at a time was the Right
Thing to do - this enables the user to move, for example, text on the
right hand screen to the middle or left, so that she can see it together
with either the text above or the text below.  Also, three C-v's are
easier to type than a third of a C-v.

I admit it didn't occur to me that there might be use cases other than my
own.  What I think we need here is a customisable option.  How about
`follow-scroll-single-page-flag'?  The cleanest default for it would
probably be nil, since that better observes the abstraction that the
collection of all visible windows should be regarded as a single page.

What do you say?

> Steps to repeat:

>     emacs -Q
>     C-h t
>     M-x follow-delete-other-windows-and-split RET
>       ;; Page 1 and 2 are visible.
>     C-c . C-v
>       ;; Now, page 2 and 3 are visible.

> I expect page 3 and 4 to be visible.

> The idea behind `follow-scroll-up' and `follow-scroll-down' is to scroll
> away the entire window group at once. For example, if you have six side by
> side windows, `follow-scroll-up' should go from displaying page 1 .. 6 to 7
> .. 12. Currently Emacs 25 go from 1 .. 6 to 2 .. 7.

>     -- Anders

> Ps. I'm the original author of Follow mode, but I haven't been involved in
> recent development.

> In GNU Emacs 25.0.92.6 (x86_64-apple-darwin14.5.0, NS appkit-1348.17
> Version 10.10.5 (Build 14F1713))
>  of 2016-04-10 built on macpro.lan
> Repository revision: 0e7bcec103073eceecc2621c19e4d290b2d97e8d
> Windowing system distributor 'Apple', version 10.3.1348
> Configured using:
>  'configure --with-ns --without-dbus'

-- 
Alan Mackenzie (Nuremberg, Germany).