关于vim的recording

我经常会不小心地只按下“q”键什么的,然后就看到的烦人的“recording”字样显示在编辑器下边了。有时候在想退出编辑器时,出现这样的情况让我发疯。

今天终于有空来研究一下个这“recording”到底是干什么的了。。。
原来它是用来记录按键的,然后我们就可以在以后用这个记录了。

如何用?
在正常状态(正常状态 = !insert状态 && !visual状态)下,按q,再按下一个字母或数字,来标识将记录保存的位置。这时编辑器下边就显示“recording”了,再按一下q(在正常状态下)就完成记录了。

综上所述 -
qx -> 开始键盘记录(在x缓存中)。(在正常状态)
要记录的“工作”
q -> 结束记录。(在正常状态)

例子 -
要想往文件开头加“<html><body>”,往文件结尾加“</body></html>”,就可以像这样执行:

qm1G0i<html><body><Esc>G$a</body></html><Esc>q

说明 -
qm    -> 开始记录(存入缓存m中)
1G    -> 到文件的第一行
0i<html><body><Esc> -> 在第一行的开始处插入“<html><body>”,再按<Esc>返回正常状态。
G$    -> 到文件的最后一行的最后一列
a</body></html><Esc> -> 在文件最后添加“</body></html>”,再按<Esc>返回正常状态。
q    -> 结束对键盘的记录

问题:怎么使用这些键盘敲击记录?
答:使用@符号加上对应缓存的名字(在正常状态)。例如,想要使用上面的记录,我们就直接在正常状态下输入@m就可以了。
---------------------
有时候在vim下边会出来另一个窗口,因为在我想退出编辑器时把“:q”敲成了“q:”。号称这个就是vim的命令历史窗口。要退出这个窗口也很简单,直接按回车或者输入“:q”都可以。

特别注意:
vim的记录功能不是智能的。在记录时,它会记录你的所有操作(包括误操作);在执行时也会执行你所有的操作(包括误操作),所有在记录时,你应该让你的按键动作更“智能化”。


如果还有疑问:那就看下面:
:help q
:help q: