在vimrc中设置record

在vimrc中设置record

Vim的record功能在大量重复操作的场景下非常实用,但是,一般我们都要每次进入Vim时重新录制record。而对于一些非常常用的record,我们想让它永久地保持,我们知道这种需求需要借助Vim的配置文件vimrc。但是具体怎么操作呢,笔者在走了一些弯路之后将设置方法记录下来,希望能对大家有帮助。

我们以添加 Python 单行注释为例,这需要我们在每一行前面添加:#

录制record的方法我们已经比较熟悉了,不熟悉的同学可参考:Vim 重复操作的宏录制

我们知道Vim中的record是录制保存在寄存器中的,以寄存器 q 为例,整个录制的键位顺序为:

以下代码都是键盘的全部操作,包括在常规模式和插入模式下,模式切换的按键也体现在代码中

<ESC>qqI#<ESC>j0q

这样我们就将添加单行注释的record录制在了寄存器 q 中,只需 n@q 即可完成 n 行单行注释。

那么,我们要怎样把它保存到 vimrc 中呢?实际上,我们可以通过 :registers 命令来查看当前各个寄存器的值。其中寄存器 q 的值如下:

--- Registers ---
...
"q   I#^[j0
...

可以看到 <ESC> 被替换成了 ^[,并且需要注意:这里的 ^[有颜色的,笔者的机器上这里是蓝色的。这一段q 的值就是我们需要添加到 vimrc 中的。

具体怎么添加呢?我们打开 vimrc 文件,并将上面的record重新录制一遍,然后键入:

<ESC>"qp

我们会发现寄存器的值输出在了文本中。我们只要将这个值赋给某个寄存器就可以了。但是一定要注意:不能直接将已经录制的寄存器的值复制粘贴给某个我们想要长久保持的寄存器。可以试一下,这样的话像 ^[ 这样的键是没有颜色标识的,这样我们 @ 执行 record 的话只会输出一段字符串。

假设我们将录制好的record存放在寄存器 q 中,我们想要长期将该record放在寄存器 m 中,可行的做法是这样:

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

也就是说,我们必须通过 "qp 来将录制在寄存器 q 中的值输出出来,而不能直接复制文本

这样编辑完 vimrc 文件之后,保存退出。再次Vim打开一个文件,可验证长期record生效。

Ref:

https://blog.easwy.com/archives/vi-tip-of-using-recording/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
简单的使用说明书 V0.6.0: 加入文件拖放功能。 V0.5.5:修正建立新的配置文件时,保存失败的Bug。 V0.5.4:修正数制计算器输入A-F时的bug,增加源数据存储类型选择。 0.5.3:修改图标,部分界面。 0.5.2: About 界面修改,添加更新网址。 0.5.1:修正块另存时新建文件保存失败的Bug。 0.5:新增文件内、文件间块移动、复制、交换、另存等功能 0.4:新增转换为二进制后比较功能 本人继MCUTool以后的另外一个单片机开发实用工具软件,用于单片机调试过程简单的参量修改,省略修改源代码、再编译的过程,直接修改目标文件。尤其是对eeprom数据的修改、调整更为方便实用。 本软件编写的目的是用来编辑存放于单片机 Flash 或 EEPROM 的数据,支持 Intel Hex 格式以及 Motorola S 格式的数据文件,也可以编辑二进制的内存映射文件。数据的编辑可以通过常量定义的方式,也可以通过内存映射的方式进行。 同时可以在两种16进制格式文件之间相互转换。格式转换以行数据为单位,以确保转换前后数据不会改变。 另外提供十进制、十六进制转换器,转换结果可以作为普通显示或作为内存映射,作内存映射时可以选择多字节数据的存储方式。 二进制比较功能,通过不同工具生成的Hex文件可能因为格式而无法进行文本方式比较,本工具可以首先转换为二进制数据再进行比较,免去自行转换的麻烦。 单文件内/双文件间的块操作,包括复制、移动、交换、另存等等,方便实验数据提取、复制。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值