如何在GNU Emacs中关闭过度滚动?

时间:2012-05-27 17:26:17

标签: emacs scroll

当我在GNU Emacs(24)中打开的文件(缓冲区)比当前窗口(框架)中显示的行数少时,我可以 - 默认情况下 - 使用滚动条向下滚动并显示顶行消失(“过度滚动”)。

如何关闭它,所以当帧中显示整个缓冲区时我无法滚动?

我可以修补gtkutil.c in the Emacs sources,但更优雅的解决方案会很好。

3 个答案:

答案 0 :(得分:0)

AFAIK,你现在不能那样做(当然你也许能够克服它)。正确行事在CPU时间上可能代价高昂,但更重要的是,实现这个“功能”似乎比人们习惯它更多,并发现它毕竟不是问题。所以没有人愿意为它编写补丁。

答案 1 :(得分:0)

现在可以通过设置变量scroll-bar-adjust-thumb-portionnil来修改滚动条的行为,为了我的目的),这是文档:

scroll-bar-adjust-thumb-portion is a variable defined in `C source code'.
Its value is nil
Original value was t

Documentation:
Adjust thumb for overscrolling for Gtk+ and MOTIF.
Non-nil means adjust the thumb in the scroll bar so it can be dragged downwards
even if the end of the buffer is shown (i.e. overscrolling).
Set to nil if you want the thumb to be at the bottom when the end of the buffer
is shown.  Also, the thumb fills the whole scroll bar when the entire buffer
is visible.  In this case you can not overscroll.

[...] version 24.4 of Emacs.

此提交引入:r111506

答案 2 :(得分:-1)

您需要添加

(setq next-line-add-newlines nil)

到您的初始文件。