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: Tue, 08 Feb 2022 19:08:25 +0200

> From: Po Lu <luangruo@yahoo.com>
> Cc: emacs-devel@gnu.org
> Date: Tue, 08 Feb 2022 08:58:22 +0800
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >> `scroll-move-point' doesn't affect redisplay; it only affects the
> >> scrolling commands in window.c.
> >
> > It does affect redisplay: by not setting the force_start flag of the
> > window.
> 
> What about modifying the code under force_start to not move point if
> `keep-point-visible' is nil?  Since the point isn't required to be
> visible anymore, there is no need to move the cursor there, I think.

I don't think you can do that indiscriminately, because some of the
places that set the window's force_start flag are unrelated to this
feature.  One example is set_window_buffer and its callers.  Another
example is the code in redisplay_window that ends with "goto
force_start".  And there are probably more.

So if you want to do that, you'll need to carefully audit all those
places, and make sure you avoid moving point only when force_start was
set by scrolling commands or in some similar situations.  Otherwise,
users will complain that point goes out of view when they didn't
expect it to.  For example, "C-x 2" goes through that code, and I'm
quite sure we don't want point to be left outside of the window in
that case.



reply via email to

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