【问题标题】:vim - Stop scrolling after first file endingvim - 在第一个文件结束后停止滚动
【发布时间】:2011-11-05 22:10:16
【问题描述】:

默认情况下,当您在 vim 窗口中向下滚动到显示缓冲区的末尾时,您可以滚动直到最后一个文件行位于 vim 显示区域的第一行。显示区域的所有其他行都用“~”字符标记。 是否有配置在最后一个文件行在vim窗口底部时停止滚动?

编辑: 更准确地说,此行为仅适用于用那些不存在的线标记填充屏幕的鼠标滚轮滚动或 PgDown 键导航。我使用向下箭头键逐行移动光标,它正确地停在最后一个文件行。

【问题讨论】:

  • 我想知道你是否可以设法让 VIM 像你想要的那样工作?

标签: vim


【解决方案1】:

只需 zb 将当前行对齐到窗口底部。

例如Gzb

毫无疑问,有一系列相关的平移动作:

  • zj 向下
  • zk向上
  • zt 顶部
  • zb 底部
  • zz 中心(中间)
  • zz 中心(中间)

为了完整性:

  • zl / zL 向右垂直平移
  • zh / zH 向左垂直平移

另外,看看scrolloff

我用

:set scrolloff=2

始终在当前光标行之前或之后保留至少 2 行的缓冲区。这使得这些平移动作几乎是神奇的。我整天只用浏览代码库

  • 分页 C-d/C-u、hjkl 以及使用(大部分)zz 的频繁平移重定位
  • 导航 }/{
  • 满足所有其他导航需求的 ctags

【讨论】:

  • 是的,我已经有一个滚动关闭设置。但它对 PgDown 或鼠标滚轮滚动没有影响。
  • 有没有办法重新映射 PgDown 或鼠标滚轮向下滚动以使用基于“z”命令的组合来自动将它们停止在文件的最后一行?
  • 事实上,一个可能的解决方案是将鼠标滚轮滚动和向下翻页键重新映射到“}”命令。感谢您让我知道此导航命令
  • 显然我上一条评论中的解决方案在插入模式下不起作用......还有其他组合可以在插入模式下向下滚动吗?
  • 是的,您可以使用 ctrl-O 在插入模式下调用正常模式命令。也就是说,我认为不需要在插入模式下滚动 - 它会弄乱(我的大脑跟踪)​​撤消项目
【解决方案2】:

我不这么认为。但即使有,如果文件中的行数少于屏幕上的行数,您希望它表现如何?您必须以某种方式显示那些不存在的行。

如果文件的顶部在视图中,你必须有一些方法告诉 vim 显示这些行,但如果顶部不在视图中,则不允许它们显示。

【讨论】:

  • 当然,如果文件没有包含足够的行来填满屏幕,那么那些不存在的行标记是没有问题的。我只是不希望 PgDown 或鼠标滚轮滚动到文件末尾以下
【解决方案3】:

不,您的描述不正确。

当你用箭头或 j/k 键逐行向下滚动时,Vim 将停在屏幕底部。 也就是说,它不会用不存在的线条填充屏幕

但是,当使用 PgDown / PgUp 逐页向下时,屏幕上可能会出现不存在的行。这是无法避免的,因为 PgDown / PgUp 键不会逐行向下跳转。

【讨论】:

  • 是的,这就是我想要避免的:使用 PgDown 或鼠标滚轮滚动在屏幕上显示不存在的行!
  • @greydet - 那么,当您在最后一页 PgDown 时,您希望 Vim 表现如何?
【解决方案4】:

我刚刚发现了这个 (http://vimrc-dissection.blogspot.se/2009/02/fixing-pageup-and-pagedown.html):

map <silent> <PageUp> 1000<C-U>
map <silent> <PageDown> 1000<C-D>
imap <silent> <PageUp> <C-O>1000<C-U>
imap <silent> <PageDown> <C-O>1000<C-D>

这似乎适用于页面键。在关于滚动的一些不成功的搜索之后,我想出了这个:

map <ScrollWheelUp> H5k
map <ScrollWheelDown> L5j

你失去了这条线,但滚动时它不是很有用?或者,您也可以这样做:

map <ScrollWheelUp> <C-U>
map <ScrollWheelDown> <C-D>

如果您不介意快速滚动...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-30
    • 1970-01-01
    相关资源
    最近更新 更多