vi技巧: 宏的使用技巧(其中怎样保存宏)那部分比较重要

本文链接地址: http://easwy.com/blog/archives/vi-tip-of-using-recording/

vi技巧: 宏的使用技巧

本文所用命令的帮助入口:

:help q
:help @
:help :let-@ 

网友Karl问

再请教一下:我想在.vimrc中设置一个宏,请vi启动的时候就有这个宏,应该怎么办?

 

其实在vim中所谓的宏就是把一串命令放到了指定的寄存器里。所以要实现Karl的需求,可以这样做:先录制好宏后,然后在vimrc里把这个宏中的命令放到指定寄存器里,这样vim启动后就可以直接使用这个宏了。

具体的做法如下:

第一步:首先录制宏,Easwy以插入三行文字做为一个简单的例子。这三行文字是:

================================
I love vim. Happy vimming!
================================ 

qu开始录制,录制完成后再按一个q命令结束,这样就把宏录制到寄存器u中了。

现在我们可以查看一下u寄存器的内容,用命令“up,把u寄存器的内容粘贴出来:

32i=^[oI love vim. Happy vimming!^M^[32i=^[ 

注意,上面的^[实际上是<ESC>键的键码,同样,^M是换行键<CR>的键码,在vim中它们以特殊的颜色被显示出来,如果你把光标在它们上面移过,你会发现它们虽被显示成两个字符,但实际上只是一个。

第二步:现在我们用下面的命令在.vimrc中输入一行:

<ESC>olet @m = "<ESC>"upa"<ESC> 

这行命令实际上在.vimrc加入了这行话:

let @m = "32i=^[oI love vim. Happy vimming!^M^[32i=^["

 

第三步:现在你重启vi,然后直接输出下面的命令:

@m 

怎么样,宏是不是生效了?!

要想了解更多细节,请阅读文章开始处给出的帮助手册。

更多关于vi/vim的内容,请阅读易水博客上的其它文章。

原创文章,请阅读页脚的许可方式,转载请注明:转载自易水博客 [ http://easwy.com/blog/]

本文链接地址: http://easwy.com/blog/archives/vi-tip-of-using-recording/

文章的脚注信息由WordPress的wp-posturl插件自动生成

 
 

This entry was posted in 开源软件 and tagged Vim on 2010年01月28日.

 

 

PS:我在保存宏的时候会提示我fenc有点部问题之类.

强制把fenc弄为空之后,

再保存下来,中间某些字符使得实现的宏与之前录制的会有所出入(我录了一个拆包的宏)

再用记事本打开后,把其中一个看上去很怪异的字符给去掉后就好了.

posted on 2012-12-21 09:35  Orz..  阅读(1911)  评论(0编辑  收藏  举报

导航