如何一遍又一遍地跳下X线

时间:2011-06-02 21:55:00

标签: vim

我正在使用10j跳下10行,但我想轻易地一遍又一跳地跳过10行。我不想用宏qv10jq@v@@ ..

执行跳转

我希望有一种重复按键的方法,比如运动f;继续跳跃(,回到)下一个角色。

有什么比我的宏短吗?

7 个答案:

答案 0 :(得分:40)

而不是10j,您可以运行:

:+10

然后你可以repeat the last ex-mode command@:

答案 1 :(得分:22)

Here's一个可以做你想做的插件。它映射; 以重复用计数给出的最后一个动作命令。

答案 2 :(得分:8)

这个解决方案让我想到使用noremap将10j(或任何其他数字)和10k映射到我的向上和向下箭头。我不知道是否有人会对这样模糊不清的东西感兴趣,但我想我会发表评论。

添加到.vimrc:

noremap <Up> 5k
noremap <Down> 5j

答案 3 :(得分:3)

尝试ctrl + f向下移动整页,然后按ctrl + b移动整页。不一定是10行。

摘自本网站:http://www.thegeekstuff.com/2009/03/8-essential-vim-editor-navigation-fundamentals/

答案 4 :(得分:2)

这里没有插件或对.vimrc的编辑,但是我发现这种简单且技术含量低的方法非常有效,因为它不需要控制键,并且可以在向上或向下滚动时以任何增量保持双手静止行或顺序(例如,向下,向下,向上):

假设您要一次向下移动44行。

44j   (of course)

现在,只需将左手食指放在“ 4”键上方,并重复此操作即可继续向下滚动44行。尽管这是3次击键,但是只要坚持使用22、33等数字,您就可以非常快速地完成操作。

现在,这样做的好处是,只需敲击“ k”而不是“ j”,您就可以快速地反转方向而无需动手。

44j
44j
44j   (oops, too far, lets go back now...)
44k

此外,您可以从更高的数字开始,例如55(用于快速滚动),然后降为22或11以回到目标位置。不幸的是,像77这样的数字在您想用左手进行数字操作时效果不佳,尽管您仍然可以用左手进行更高的数字(例如77),但这只是您偏离了标准的触摸打字手的位置在那个时候。

答案 5 :(得分:1)

this answer: 中有一个很好的解决方案。

我发现这里有一些很好的信息:

:help scroll-cursor

该线程还引用了:

:help motion.txt

您可以配置一次移动多少行,例如:15<C-d>

随后的 <C-d><C-u> 笔画将移动相同数量的行

答案 6 :(得分:0)

我发现映射10char跳转到箭头键非常适合导航。 (^ d,^ u,^ f和^ b的跳跃幅度太大,我都不喜欢)。只需将其粘贴到您的.vimrc文件中即可:)

noremap <Up> 10k
noremap <Down> 10j
noremap <Left> 10h
noremap <Right> 10l

或者,您可以将自定义跳转映射为替换以下任意一项:^ d,^ u,^ f和^ b,例如:

map <C-d> 10j
map <C-u> 10k