如何在vim中增加一个数字

如何在vim中增加一个数字,vim,Vim,我在vim中找到了一种非常简洁的方法来增加文本中的数字。它工作得非常好,但前提是我拉下一条线。如果有一整段我想增加一个数字,那就行不通了。 以下是它在单线上的工作原理: qa Y p Ctrl-A q 然后输入15@a执行宏15次 有人知道如何将同样的逻辑应用于这样的事情吗: text 1 bla bla 1 所以我想要的是: text 2 bla bla 2 text 3 bla bla 3 ... and so on 一种方法是记录以下宏: qayipjo<Esc>pv

我在vim中找到了一种非常简洁的方法来增加文本中的数字。它工作得非常好,但前提是我拉下一条线。如果有一整段我想增加一个数字,那就行不通了。 以下是它在单线上的工作原理:

qa
Y
p
Ctrl-A
q
然后输入15@a执行宏15次

有人知道如何将同样的逻辑应用于这样的事情吗:

text 1
bla bla 1
所以我想要的是:

text 2
bla bla 2

text 3
bla bla 3

... and so on

一种方法是记录以下宏:

qayipjo<Esc>pvip<C-a>q
qayipjopvipq
细分:

qa      start recording
yip     yank inner paragraph
jo<Esc> insert line after paragraph
p       paste
vip     select inner paragraph
<C-a>   increment all numbers
q       stop recording
qa开始记录
叶燕内段
jo在段落后插入行
磷膏
选择内部段落
递增所有数字
停止录音

可通过
15@a

能否测试此解决方案:

:g/./exec "normal \<C-a>"
:g//exec“正常”

可以添加
j$
移动到下一行吗?只需用
Ctrl+V
标记行,然后按Ctrl+A
qayipjopvipq
然后按
15@a
。。。。它第一次起作用,现在在我把15@a我只粘贴了一份段落(而不是15份)?你知道为什么吗?你的段落每段只有两行吗?如果它们较长,则应将
j
替换为类似
}