第三部分:登堂入室
:set nu 显示行数
nG n代表数字,比如1G就是跳到第一行首,10G就是跳到第10行首
G 跳到最后一行
. 重复上一次的动作,如插入、删除、粘贴等
% 主要对代码有用,当光标在一个{[()]}之上时,可以立马跳至与之配对的那个括号上
* 跳至下一个与当前单词一样的单词上
# 同上,不过是向上跳
下面看两种命令
一种是n command,n表示数量,command表示一些命令,比如dd删除行、yy复制行、p粘贴等。这种组合很好理解,就是把后面的动作重复做几遍,像4dd表示从此处剪切4行,10p表示把剪贴的内容粘贴10份到这前位置
另一种是[start ][command][end]这种命令中的command是一些有起点终点之分的命令,比如d删除、y复制、gU变大写等(是不是看到d、y眼熟呢,是了,dd,yy其实是d,y的快捷操作罢了)。这种命令一般就是用command操作从start到end中的所有内容,其中start和end就可以用vim中各种强大的定位命令。比如——1GyG表示从第一行复制到最后一行首,f(d%表示找到下个左括号,然后删除与之相对的括号间的所有内容(f的用法以后说)。
其实还有一个比较特别的命令v有点类似于[start ][command][end],只不过它能可视地显示出将要操作的文本区域,第一次按下v就相当于确定了选择的起点,然后我们可以用各种定位命令或者hjkl移动位置,到我们确定好结束位置时,再按一下操作指令就行了。
其命令差不多是[start]v[end]...[command],它的操作和上面说到的区别一是顺序,一是结束定位命令可以有多个,比如3Gv6G$d,0vG$y等。