Vim:提高文档遍历速度

时间:2011-11-03 05:43:16

标签: vim

在使用h, j, k, l时,我有时会发现Vim中的文档遍历太慢。 有没有办法暂时增加这些键移动光标的行数/字符数? (即。而不是移动1j,按j将移动3j

编辑: 解决方案:

:map <F8> :noremap j 3j <CR>
:map <S-F8> :noremap j j <CR>

我想要这样的东西,以便我可以轻松浏览不一定熟悉它的更长的代码体。这种方法使我可以轻松地在“浏览”模式和“编码”模式之间切换。

7 个答案:

答案 0 :(得分:19)

虽然可能(使用:noremap j 3j 输入:noremap j j 输入进行恢复),但很长一段时间内更改行为可能没有用这些钥匙。

有许多方法可以在Vim中导航。当然,您可以使用 Ctrl F Ctrl B 按全屏显示。

您可以在执行导航之前输入一些动作。

您也可以使用直接转到特定行: 9 输入,例如。

如果您看到要导航的文本,请使用 / ,然后使用文本。

对于 h l ,您可以使用 b w 更快地导航字边界,并且< kbd> e ,以及 B W E 的连续非空格。

答案 1 :(得分:12)

尝试Ctrl + D / Ctrl + U和Ctrl + F / B(分别向上/向下,向前/向后)。

这些文件将比h,j,k,l更快地遍历文档。

答案 2 :(得分:5)

@Bryan Ross建议的是绝对正确的。我想补充一点。使用relativenumber,它可以帮助您更有效地使用jk

答案 3 :(得分:1)

Jay回答已经足够了,我想补充以下内容!

vim中有许多不同类型的导航,(其中h,j,k,l只是行导航)。还有一些是:

  • 屏幕导航
  • spl navigation
  • 搜索导航
  • word navigation

请参阅此文章以找出执行此操作的快捷键:Essential Vim editor navigation

答案 4 :(得分:1)

另一件有用的事情是打开行号(:设置​​号码)。如果您在屏幕上看到需要去的地方并看到行号,那就是G.

如果您处理块中的代码,%将移动到匹配的括号,括号等。

如果处理包含大量古怪字符的文件,t,T,f和F非常有用。

答案 5 :(得分:0)

尝试CTRL + YCTRL + E滚动而不是移动行 使用CTRL + B滚动到页面底部,使用CTRL + F滚动到页面顶部 使用H(高度),M(中间),L(低)将光标移动到屏幕的顶部,中间和底部

您还可以提高CTRL + Y和其他键的速度,此答案在https://stackoverflow.com/a/7990810/10539792中进行了解释

答案 6 :(得分:-1)

我知道有很多vim技巧可以快速遍历,但对我来说最舒服的是一个机械键盘,当你按住一个按钮时内置重复率增加它会增加j或k的重复reat等所以遍历也将快速而顺畅。 (很好!) 但是当你拥有你的vimrc但却没有你的键盘而不是通用的解决方案时它很烦人。