如何将当前行的整数增加1

cha*_*eon 1 vim nand2tetris

我正在研究nand2tetris,我最终得到了很多文件,最终看起来像这样:

Bit(in=in[0], load=load, out=out[0]);
Bit(in=in[1], load=load, out=out]1]);
...
Bit(in=in[15], load=load, out=out[15]);
Run Code Online (Sandbox Code Playgroud)

所以我一直在第一行,然后使用15p,然后做:s/0/i/g15次(i我需要的索引在哪里).我注意到我可以替换它:s/\[\d\]/\[i\]/g,但即使在这里我手动设置i每次运行命令的值.是否有一个命令我可以运行,以便i自动计算\d+1,我可以重复每行的命令,而无需手动指定值?

Pet*_*ker 7

一种方法是使用Vim宏.

概观

复制该行然后粘贴该行.增加两个数字.

qqyyp<c-a>l<c-a>q
Run Code Online (Sandbox Code Playgroud)

请注意,这会将宏保存到寄存器中q.

通过执行宏@q或通过一起执行14@q.

有关更多帮助请参阅:

:h q
:h ctrl-a
Run Code Online (Sandbox Code Playgroud)