Vim命令只在数字字符串中的光标位置增加数字位数?

Kev*_*Lee 8 vim

我有几个例子,我想做以下事情

在档案中:

1234
Run Code Online (Sandbox Code Playgroud)

当光标位于第1位时,我想使用Ctrl-A增加数字,以便我得到

2234
Run Code Online (Sandbox Code Playgroud)

代替

1235
Run Code Online (Sandbox Code Playgroud)

是否有内在的vim命令来执行此操作?

否则,我应该设置一个快速脚本:

  1. 带有前导和尾随空间的环绕数字
  2. Ctrl-A递增
  3. 删除前导和尾随空格

像这样,然后映射到一个键?

Bro*_*omb 8

增量函数采用像大多数vim命令一样的前导数字. 1000 ctrl+a会2234像你想要的那样回归.如果您的所有数字都是4位数字,那么这将有效.或者你可以使用r2它用光标替换光标下的当前字符2,但这可能太具体了.

如果您需要脚本,则可以录制宏.

qaa[space][esc]h[ctrl+a]lx

细分:

qa- 开始录制q宏并保存到注册a

a[space][esc] - 在数字后添加一个空格

h - 回到号码

ctrl+a - 加一个

lx 向右移动并删除空间.

您不需要添加前导空格,因为您注意到该ctrl+a函数作为整体对数字起作用并且总是添加1.