emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Allowing point to be outside the window?


From: Eli Zaretskii
Subject: Re: Allowing point to be outside the window?
Date: Mon, 07 Feb 2022 15:41:12 +0200

> From: Po Lu <luangruo@yahoo.com>
> Cc: emacs-devel@gnu.org
> Date: Mon, 07 Feb 2022 15:21:49 +0800
> 
> Po Lu <luangruo@yahoo.com> writes:
> 
> > Eli Zaretskii <eliz@gnu.org> writes:
> >
> >> So we have at most 3 states, and could have a single tri-state
> >> variable.
> >
> > Indeed.
> >
> >> And I question the validity of the combination scroll-move-point = nil
> >> with keep-point-visible = t.  The problem with your implementation is
> >> that scroll-move-point = nil disables scrolling in redisplay_window,
> >> but scrolling there is used not necessarily as result of scrolling
> >> commands, but also when redisplay_window decides that the optimal
> >> method of updating a window is to scroll its previous contents.  Thus,
> >> disabling scrolling on that level will cause confusing results,
> >> because users will expect that to affect only scrolling commands: they
> >> are unaware that redisplay sometimes scrolls the window for other
> >> reasons.
> >
> > Perhaps we could have redisplay bind `scroll-move-point' to a reasonable
> > value before calling the scrolling commands?
> 
> I don't see where the scrolling commands in window.c get called from
> `redisplay_window'.

I didn't say redisplay calls the scrolling commands: you did.

The truth is that redisplay doesn't call any scrolling commands.

> Is it try_scrolling?

try_scrolling is not a scrolling command, it's one of the methods used
by redisplay to update a window's display by reusing parts of the
existing display.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]