问题描述
1.如何同时查找多个关键词比如我想要高亮出文档中所有的aa, bbbb, ccccc
2.举例说明有一个枚举
enum Test { TEST_A, TEST_BBBBB, TEST_CC, TEST_DDDDDDD, TEST_EEE};
如何快速加上如下的注释
enum Test { TEST_A, // 0 TEST_BBBBB, // 1 TEST_CC,// 2 TEST_DDDDDDD, // 3 TEST_EEE// 4};
对于问题2,综合各位的回答,加上自己的修改,我使用的方法如下:
set ve=all 使得光标可以到达没有字符的地方C-v 进入列块可视模式,选中要插入注释的那一列按 A 并插入 // 0,按 Esc 回到普通模式V进行行可视模式,选中添加了注释的所有行执行命令let i=0|’<,’>g/0$/s//=i/|let i=i+1set ve= 把虚拟编辑选项复原问题解答
回答1:第二个问题:
set ve=all 使得光标可以到达没有字符的地方C-v 进入列块可视模式,选中要插入注释的那一列按 A 并插入 // 0,按 Esc 回到普通模式再次进入列块可视模式,选中那一列 0使用 visIncr.vim 的命令 :I 把它改成递增的数值序列set ve= 把虚拟编辑选项复原(我推荐使用非默认值 block,这样不用经常切换了)PS: 一般用不到枚举的整数表示的吧?
回答2:第一个问题,搜索的时候用正则:
第二个问题,录制个宏就好了吧:
首先手动输入第一行的注视,也就是在结尾添加一个 // 1在第一行的任意位置,录制这个宏:qq^f y$j$p^A用之~解释一下:
qq: 录制宏到寄存器 q^: 去行首f: (注意 f 后面是空格),去第一个空格处y$: 复制到行尾j$p: 去下一行的结尾粘贴^A: (这是 Ctrl-A)+1回答3:第二个问题
使用列编辑 可以连续一系列注释自增的数字, 在命令行模式,输入如下命令:
:let i=0|g/0/s//=i/|let i=i+1
自增的方案来源这往篇文章:link