Loops 在Vim中自动添加/生成内容
我有一个巨大的数字列表,我想在每一行的末尾添加内容。是这样的: 之前:Loops 在Vim中自动添加/生成内容,loops,vim,text,editing,Loops,Vim,Text,Editing,我有一个巨大的数字列表,我想在每一行的末尾添加内容。是这样的: 之前: 123123 123123 13234 124125 12634 5234 之后: 123123, 1 123123, 2 13234, 3 124125, 4 12634, 5 5234, 6 有两点: 我知道:range s/oldpattern/newpattern/将用新模式替换旧模式 我知道for I在范围内(begin,end)| something | endfor可以生成这些额外的数字 然而,我不知道是否
123123
123123
13234
124125
12634
5234
之后:
123123, 1
123123, 2
13234, 3
124125, 4
12634, 5
5234, 6
有两点:
:range s/oldpattern/newpattern/
将用新模式替换旧模式for I在范围内(begin,end)| something | endfor
可以生成这些额外的数字然而,我不知道是否有可能将它们结合起来做我想做的事情(或者是否有不同的方法来做)。有人知道如何自动添加这些额外值吗?我很确定使用Vim是可能的,但我不知道怎么做。您可以通过直观地选择区域然后键入来实现这一点
:s/$/\=', '.(line('.')-line("'<")+1)<CR>
:s/$/\=','(行('.')-行(“'我愿意这样做
nl(默认情况下)将跳过空行编号
或者作为一个单一的
:exec "%!nl"|%s/\v^\s*(\d+)\s+(.*)$/\2, \1/g
或
请注意,nl
不为空行编号,因此可能需要使用nl-ba
,具体取决于所需的行为。
:exec "%!nl"|%s/\v^\s*(\d+)\s+(.*)$/\2, \1/g
:%!awk '{print $0", "NR}'
:%!perl -lpe '$_.=", $."'