[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Make scroll-{up, down} move point to {start, end} of newly visible t
From: |
Spencer Baugh |
Subject: |
Re: Make scroll-{up, down} move point to {start, end} of newly visible text |
Date: |
Wed, 16 Aug 2023 12:20:23 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
Eli Zaretskii <eliz@gnu.org> writes:
>> From: Spencer Baugh <sbaugh@janestreet.com>
>> Date: Mon, 31 Jul 2023 16:18:15 -0400
>>
>>
>> After I use scroll-up or scroll-down, I want to start reading the new
>> text on the screen. But it's easy to lose track of where the new text
>> start, especially with larger values of next-screen-context-lines.
>>
>> So, I would like scrolling to move point to the division between old and
>> new text. Then the location of the cursor will help me keep track of
>> which text is new and which text is old.
>
> I don't understand, because what you want happens here by default:
> scrolling always puts at the top of the window the first line of those
> which constitute next-screen-context-lines. So, for example, if you
> have next-screen-context-lines set to 5, C-v will put the 5th line
> from the window's bottom at the top screen line.
>
> If by "new text start" you mean the first line that was not visible in
> the window before C-v, then set scroll-margin to the value of
> next-screen-context-lines, and then Emacs will put point at that first
> new line.
>
> Is that what you want?
After using it for a bit, I ended up deciding that the other effects of
scroll-margin were too annoying, so I turned it off again.
(scroll-margin interacts poorly with C-M-l for example, because C-M-l
puts the start of the function at the top of the screen, but actually
moving point to the start of the function then causes annoying
scrolling.)
So I still want some other way to achieve this behavior which doesn't
change scroll-margin.
I thought about what behavior I want, exactly, and I think it's this:
when point is off-screen after scroll-up, we should first try to move
point to "window-end before we scrolled", and only if that position is
also off-screen should we move point to window-start. (Currently we
unconditionally move point to window-start)
Like this:
(defun my-scroll-up-command (&optional arg)
(interactive "^P")
(move-to-window-line -1)
(scroll-up-command arg))
(defun my-scroll-down-command (&optional arg)
(interactive "^P")
(move-to-window-line 0)
(scroll-down-command arg))
except of course this implementation moves point even if it's not
necessary.
Does this seem like a reasonable feature to add to the scrolling code?
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, (continued)
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Eli Zaretskii, 2023/08/12
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Emanuel Berg, 2023/08/12
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Eli Zaretskii, 2023/08/12
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Emanuel Berg, 2023/08/13
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Eli Zaretskii, 2023/08/13
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Emanuel Berg, 2023/08/22
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Eli Zaretskii, 2023/08/22
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Emanuel Berg, 2023/08/23
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Eli Zaretskii, 2023/08/24
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Emanuel Berg, 2023/08/24
Re: Make scroll-{up, down} move point to {start, end} of newly visible text,
Spencer Baugh <=
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Eli Zaretskii, 2023/08/16
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Spencer Baugh, 2023/08/16
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Eli Zaretskii, 2023/08/16
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Spencer Baugh, 2023/08/16
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Eli Zaretskii, 2023/08/17
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Spencer Baugh, 2023/08/17
- Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Eli Zaretskii, 2023/08/17
Re: Make scroll-{up, down} move point to {start, end} of newly visible text, Emanuel Berg, 2023/08/02