Vim骚操作:使用q记录器,大大提高效率




vim中的记录器可以用来记录文本操作时大量重复性的劳动,从而后面直接使用快捷键就行,骚操作可以大大简化劳动力。

此博客只是简单举例2个,而Vim记录器使用广泛不止于此,比如这样:
在这里插入图片描述

其他使用场景请体会后自行斟酌。我另一篇博客举了一些例子可以参考:【Vim生成一列连续按规则递增递减的数字

大体来说,vim记录器使用流程如下:

1. 打开记录器     #按下q打开记录器跟一个按键即可,如:qa表示将后续操作记录与按键a中
2. 开始vim骚操作  #操作文本
3. 关闭记录器     #再按q表示退出记录器,
4. 重复执行记录器  #然后重复执行则按下【@a】即可在执行一次按键a中记录的动作。

下面通过两个小例子来简述记录器的使用

备注:下面例子需要有vim快速注释插件【NerdCommenter】结合一起使用,安装与使用方法这里不再赘述。




一、批量反注释

1.1 先上动图感受感受

1.2 操作步骤

  1. 按顺序执行如下操作

    qa            #打开记录器
    
    shift+v       #选中当前行
    2j            #光标下移2,c空格         #注释选中的文本
    
    f[            #光标跳转到字符 [
    ctrl+v        #进入多行操作模式
    2jk           #光标下移2行并右移一个字符
    s / * ESC     #替换成*/,并进入普通模式
    
    f<            #光标跳转到字符 <
    ctrl+v        #进入多行操作模式
    2jk           #光标下移2行并右移一个字符
    */ESC         #替换成*/,并进入普通模式
    5j0           #光标下移5行,并跳转到行首
    
    q             #退出记录器
    
    @a            #重复执行
    @a            #重复执行
    @a            #重复执行
    @a            #重复执行
    @a            #重复执行
    @a            #重复执行
    



二、批量注释

2.1 先上动图感受感受

2.2 操作步骤

  1. 按顺序执行如下操作

    qa
    
    shift+v
    2j
    ,c空格
    5j
    
    q
    
    @a
    @a
    @a
    @a
    @a
    @a
    



附录:博客动图中操作的示例代码

  1. 动图中示例代码:

        linux,keymap = <
            /*row0*/
            0x00000069  /* Qt.Key_Left  -> HEX:69 -> DEC:105 -> KEY_LEFT  */
            0x0001006C  /* Qt.Key_Down  -> HEX:6C -> DEC:108 -> KEY_DOWN  */
            0x0001006C  /*  Reserved                                      */
    
            /*row1*/
            0x01000067  /* Qt.Key_Up    -> HEX:67 -> DEC:103 -> KEY_UP    */
            0x0101006A  /* Qt.Key_Right -> HEX:6A -> DEC:106 -> KEY_RIGHT */
            0x0001006C  /*  Reserved                                      */
    
            /*row2*/
            0x0200004D  /* Qt.Key_M     -> HEX:4D -> DEC:77  -> KEY_KP6   */
            0x02010058  /* Qt.Key_X     -> HEX:58 -> DEC:88  -> KEY_F12   */
            0x0202001C  /* Qt.Key_Return-> HEX:1C -> DEC:28  -> KEY_ENTER */
    
            /*row3*/
            0x0300004E  /* Qt.Key_N     -> HEX:4E -> DEC:78  -> KEY_KPPLUS*/
            0x0301004F  /* Qt.Key_O     -> HEX:4F -> DEC:79  -> KEY_KP1   */
            0x03020049  /* Qt.Key_I     -> HEX:49 -> DEC:73  -> KEY_KP9   */
    
            /*row4*/
            0x04000008  /* Qt.Key_7     -> HEX:08 -> DEC: 8  -> KEY_7     */
            0x04010009  /* Qt.Key_8     -> HEX:09 -> DEC: 9  -> KEY_8     */
            0X0402000A  /* Qt.Key_9     -> HEX:0A -> DEC:10  -> KEY_9     */
    
            /*row5*/
            0x05000005  /* Qt.Key_4     -> HEX:05 -> DEC: 5  -> KEY_4     */
            0x05010006  /* Qt.Key_5     -> HEX:06 -> DEC: 6  -> KEY_5     */
            0x05020007  /* Qt.Key_6     -> HEX:07 -> DEC: 7  -> KEY_6     */
    
            /*row6*/
            0x06000002  /* Qt.Key_1     -> HEX:02 -> DEC: 2  -> KEY_1     */
            0x06010003  /* Qt.Key_2     -> HEX:03 -> DEC: 3  -> KEY_2     */
            0x06020004  /* Qt.Key_3     -> HEX:04 -> DEC: 4  -> KEY_3     */
    
            /*row7*/
            0x0700002D  /* Qt.Key_Minux -> HEX:2D -> DEC:45  -> KEY_X     */
            0x0701000B  /* Qt.Key_0     -> HEX:0B -> DEC:11  -> KEY_0     */
            0x0702002E  /* Qt.Key_Period-> HEX:2E -> DEC:46  -> KEY_C     */
            >;   
        gpio-activelow;
        status = "okay";
    
  • 6
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值