Vim的重复操作与高效性
Posted vim教程网
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vim的重复操作与高效性相关的知识,希望对你有一定的参考价值。
本质上讲,我们需要完成的工作大部分都是重复性的。凡是可以简化重复性操作的方式,都会成倍地提供工作效率。
Vim 会记录最近执行的操作,对重复性操作进行了优化,让我们用一次按键就能重复上次的工作,这是我认为Vim被称为高效率编辑器的重要原因之一 (Edit Text at the speed of thought)。
1. 如vim重复操作命令所介绍,Vim普通模式下的 .
命令可以用于重复上次的修改,这里提到的修改对象可以是字符、整行,甚至是整个文件,按 u
回退操作。
2. .
命令不会重复由 Vim 命令行中做出的修改,若需要重复执行上次的 Ex 命令只需按 @:
即可。@:
命令其实是用到了 :
寄存器,:
寄存器总是保存着最后执行的命令行命令 (参见 :h quote_:
)。
3. 在运行过一次 @:
后可以用 @@
命令来重复执行上次的 Ex 命令,但无直接的回退方式。
4. 普通模式下可以使用命令 &
重新执行上次的Vim替换操作 :substitute
,按 u
回退操作。
5. Vim普通模式下的 ;
命令会正向重复查找上次 f
命令所查找字符,按 ,
回退光标位置。
6. Vim普通模式下的 n
命令在Vim缓冲区中重复查找下一处匹配项,按 N
回退光标位置。
7. Vim宏可通过录制操作序列到某个Vim寄存器 a 中,然后使用命令 @a
回放录制的宏,实现重复操作一系列修改,用 @@
重复最近调用过的宏,按 u
回退操作。
8. gv
命令可以用于重选上一次由可视化模式选择的文本范围,按 Esc
退出可视化模式。
9. 很多Vim Ex
命令(即Vim命令行命令)可以用行号、位置标记或是查找模式来指定要执行操作的开始位置及结束位置,实现一条命令同时操作多行。
10. Vim命令行命令 global
允许在某个指定模式的所有匹配行上运行 Ex 命令,而 normal
命令允许在Vim命令行模式下对指定范围内的每行执行普通模式下的操作,均可用于高效完成Vim下的重复操作,更多内容可以参看《Vim global命令和重复操作 》以及 《Vim normal命令》。
以上是关于Vim的重复操作与高效性的主要内容,如果未能解决你的问题,请参考以下文章