Vim 底部的 space 怎么去掉?

How do you remove the space at the bottom of Vim?

我最近开始使用 MacVim,想知道如何更改 Vim 的滚动行为,以便当滚动条到达代码末尾时,它不会移动更进一步(这让我很恼火,因为我使用的其他文本编辑器不是这样的,如果我快速尝试滚动到底部,它会超过最后几行)。现在,在代码的最后一行和编辑器的结尾之间总是有一些空行。有什么特别的原因吗?

(我指的就是这个):

控制缓冲区视口的能力是Vim的固有部分;我不知道有任何可能影响它的选项。将光标放在缓冲区中的最后一行[之一]上,您可以使用[count]zb重新绘制底部的当前/[count]) 命令来获得你想要的布局。

您或许能够在 :autocmd CursorMoved * ... 触发器上自动执行此操作,但以编程方式确定当前视口是否需要此类校正(考虑 :set wrap 之类的事情)可能相当困难。

至少有一个原因是这样的:

有一个滚动命令,使光标位于屏幕顶部:zt。如果您的光标位于文件的最后一行,则您描述的行为是此工作所必需的。

虽然你问了一个方法来禁用它,但我不知道有什么方法可以做到这一点。 超级用户对这个问题的回答表明确实不可能这样做: https://superuser.com/questions/381406/dont-let-vim-scroll-below-bottom-line