Blog icon indicating copy to clipboard operation
Blog copied to clipboard

VIM之重复执行

Open vonzhou opened this issue 5 years ago • 0 comments

我们都害怕重复,重复是繁琐的,重复是低效的。凡是可以简化重复操作的方式,都会成倍节约我们的时间,甚至降低日后的运维成本。

.命令(dot command)的效果是普通模式下重复上一次执行的操作, 这个看似简单的命令,实则会大大提升我们的效率。

重复上次修改(repeat last change)这个修改可能是删除一个字符、插入特定文本、做了格式调整等等。

接下来看几个例子,每次操作完成, 使用u将文本恢复到初始状态。

删除单个字符

x命令删除单个字符,然后不断的.VIM就会删除光标下的字符。

删除整行

dd命令删除整行,然后不断的.VIM就会删除光标所在的行,先往下,让后往上,直到删掉所有。

5.输入可以同时删除5行。

复制整行

yy命令复制整行,然后移动到合适的位置,使用p进行复制到当前行的下一行,或者P复制到当前行的上一行,后续移到新位置,可以使用.进行上述复制。

缩进

>G命令会增加从当前行到文末的缩进层次,如果.就会不断缩进。

一次修改

从进入插入模式,到<Esc>返回到普通模式,期间进行进行的编辑,也可以使用.进行重复。

删除整个单词

可以使用daw命令(delete a word)来删除整个单词,aw是一种文本对象(text object)。

daw之后不断的.就可以删除光标所在的单词,节省了大量输入。

vonzhou avatar Jul 25 '20 16:07 vonzhou