分类: LINUX
2015-09-15 11:05:13
以往,要想在多行执行normal 模式下命令可以通过定义宏来重复操作,今天讲个新鲜的。:normal
命令。之前讲过一个列子,实现注释多行代码这样一个需求,可选的方法如下三种方式:(当然你还可以相出更多的办法来)
import urllib2
def html():
f = urllib2.urlopen(")
print f.read()
:%s/^/#/g
gg<Ctrl-v>I#<Esc>
.
重复执行每一行
我们可以在第三种方法之上用normal
命令实现上述需求,步骤:
I#<Esc>
jVG
选中之后的所有行
:'<,'>normal .
这样刚刚选中的行都将执行.
代表的最后一次操作。注:只要输入:
就能实现:'<,'>
,你可以注意VIm的左下角的提示。
第四种方法::%normal I#
,%代表这个文件,当然你可以选择具体的范围,如::1,4normal I#
总结::normal
命令可以执行任何normal 模式下的命令,更多帮助::help normal
。对了,上面这个例子你还可以用“宏,record”来达到要求,如果没有想起来,翻开Recode/Play试试吧。