[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#5718: scroll-margin in buffer with small line count.
From: |
npostavs |
Subject: |
bug#5718: scroll-margin in buffer with small line count. |
Date: |
Mon, 30 Jan 2017 23:52:22 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) |
Eli Zaretskii <eliz@gnu.org> writes:
>> From: npostavs@users.sourceforge.net
>> Cc: 5718@debbugs.gnu.org, ahyatt@gmail.com, gavenkoa@gmail.com
>> Date: Sat, 28 Jan 2017 19:57:21 -0500
>>
>> Okay, I think this is ready now, I'm posting the final patchset for
>> reference. It's basically the same as the previous stuff, but I've made
>> maximum-scroll-margin customizable, and renamed window-tests.el to
>> test/manual/scroll-tests.el (since it only works in an interactive
>> session).
>>
>> I'll push to master in a couple of days.
>
> Thanks, it LGTM. Would you mind to mention the new option in the user
> manual?
Oh right, forgot about that. Does this look okay?
diff --git c/doc/emacs/display.texi i/doc/emacs/display.texi
index c6e990d..4c4d696 100644
--- c/doc/emacs/display.texi
+++ i/doc/emacs/display.texi
@@ -285,13 +285,17 @@ Auto Scrolling
@code{scroll-up-aggressively} / @code{scroll-down-aggressively}.
@vindex scroll-margin
+@vindex maximum-scroll-margin
The variable @code{scroll-margin} restricts how close point can come
to the top or bottom of a window (even if aggressive scrolling
specifies a fraction @var{f} that is larger than the window portion
between the top and the bottom margins). Its value is a number of screen
lines; if point comes within that many lines of the top or bottom of
the window, Emacs performs automatic scrolling. By default,
-@code{scroll-margin} is 0.
+@code{scroll-margin} is 0. The effective margin size is limited to a
+quarter of the window height by default, but this limit can be
+increased up to half (or decreased down to zero) by customizing
+@code{maximum-scroll-margin}.
@node Horizontal Scrolling
@section Horizontal Scrolling
diff --git c/doc/lispref/windows.texi i/doc/lispref/windows.texi
index 6f3de0c..affa28c 100644
--- c/doc/lispref/windows.texi
+++ i/doc/lispref/windows.texi
@@ -3924,6 +3924,21 @@ Textual Scrolling
out of the margin, closer to the center of the window.
@end defopt
+@defopt maximum-scroll-margin
+This variable limits the effective value of @code{scroll-margin} to a
+fraction of the current window line height. For example, if the
+current window has 20 lines and @code{maximum-scroll-margin} is 0.1,
+then the scroll margins will never be larger than 2 lines, no matter
+how big @code{scroll-margin} is.
+
+@code{maximum-scroll-margin} itself has a maximum value of 0.5, which
+allows setting margins large to keep the cursor at the middle line of
+the window (or two middle lines if the window has an even number of
+lines). If it's set to a larger value (or any value other than a
+float between 0.0 and 0.5) then the default value of 0.25 will be used
+instead.
+@end defopt
+
@defopt scroll-conservatively
This variable controls how scrolling is done automatically when point
moves off the screen (or into the scroll margin). If the value is a
- bug#5718: scroll-margin in buffer with small line count., (continued)
- bug#5718: scroll-margin in buffer with small line count., npostavs, 2017/01/13
- bug#5718: scroll-margin in buffer with small line count., Eli Zaretskii, 2017/01/14
- bug#5718: scroll-margin in buffer with small line count., npostavs, 2017/01/15
- bug#5718: scroll-margin in buffer with small line count., Eli Zaretskii, 2017/01/16
- bug#5718: scroll-margin in buffer with small line count., npostavs, 2017/01/21
- bug#5718: scroll-margin in buffer with small line count., Eli Zaretskii, 2017/01/21
- bug#5718: scroll-margin in buffer with small line count., npostavs, 2017/01/22
- bug#5718: scroll-margin in buffer with small line count., Eli Zaretskii, 2017/01/22
- bug#5718: scroll-margin in buffer with small line count., npostavs, 2017/01/28
- bug#5718: scroll-margin in buffer with small line count., Eli Zaretskii, 2017/01/30
- bug#5718: scroll-margin in buffer with small line count.,
npostavs <=
- bug#5718: scroll-margin in buffer with small line count., Eli Zaretskii, 2017/01/31