我已经练习使用 VIM 一段时间了,但我仍然发现CTRL B文件顶部附近的行为令人恼火,并想知道是否(或如何)可以修改它的工作方式。
通常,按下 时CTRL B,可见缓冲区会向上滚动一页,光标也会向上跳转相同数量的行。但在文件顶部附近,可见缓冲区会跳转到文件开头,光标会设置在最后一行可见行。
我希望光标被设置到第一个可见行。我能以某种方式强制执行此行为吗?
示例(当前行为):假设终端窗口有 30 行空间,第一个可见行是 3,光标位于第 20 行。如果我按下,CTRL B第一个可见行将跳转到 1,光标现在位于最后一个可见行 - 第 30 行(而不是预期的第 1 行)。
答案1
重新映射Ctrl-B
ie<C-B>
大写字母H
将光标移动到页面顶部。
(零)将光标0
移动到行首。
:nmap <C-B> <PageUp>H0