Vim:如何在文件中实际插入行号?

Vim:如何在文件中实际插入行号?,vim,line-numbers,Vim,Line Numbers,我知道如何使用:set nu在Vim中显示行号,但我真正想要的是使这些行号成为文件的实际内容,最好只是文件的一部分。在vim cat-n fileName>>fileName.numbers之外工作。有没有让它在Vim内部工作的建议?您可以通过一个对行进行编号的程序来传递该文件,例如cat: 要仅对某些行进行编号,请首先在可视模式命令V中选择行,然后键入:。提示变为:“您可以通过对行进行编号的程序传递文件,例如cat: 要仅对某些行进行编号,请首先在可视模式命令V中选择行,然后键入:。提示变为:

我知道如何使用:set nu在Vim中显示行号,但我真正想要的是使这些行号成为文件的实际内容,最好只是文件的一部分。在vim cat-n fileName>>fileName.numbers之外工作。有没有让它在Vim内部工作的建议?

您可以通过一个对行进行编号的程序来传递该文件,例如cat:


要仅对某些行进行编号,请首先在可视模式命令V中选择行,然后键入:。提示变为:“您可以通过对行进行编号的程序传递文件,例如cat:


要仅对某些行进行编号,请首先在可视模式命令V中选择行,然后键入:。提示变为:“您可能还想签出增量包。如果你有一段文字

test
test
test
test
test
test
test
test
test
test
test
您可以选择第一行上的“t”,然后使用Ctrl-V进入视觉块模式。选择直到最后一行,然后使用I进入插入模式。输入数字“1”加上空格,然后单击escape离开视觉块模式。然后,在每行前面都有一个1:

1 test
1 test
1 test
1 test
1 test
1 test
1 test
1 test
1 test
1 test
1 test
接下来,再次突出显示视觉块模式下的所有1,并键入:Inc。这将增加数字,基本上是在文本中为行编号:

 1 test
 2 test
 3 test
 4 test
 5 test
 6 test
 7 test
 8 test
 9 test
10 test
11 test

您可能还想签出增量包。如果你有一段文字

test
test
test
test
test
test
test
test
test
test
test
您可以选择第一行上的“t”,然后使用Ctrl-V进入视觉块模式。选择直到最后一行,然后使用I进入插入模式。输入数字“1”加上空格,然后单击escape离开视觉块模式。然后,在每行前面都有一个1:

1 test
1 test
1 test
1 test
1 test
1 test
1 test
1 test
1 test
1 test
1 test
接下来,再次突出显示视觉块模式下的所有1,并键入:Inc。这将增加数字,基本上是在文本中为行编号:

 1 test
 2 test
 3 test
 4 test
 5 test
 6 test
 7 test
 8 test
 9 test
10 test
11 test

:%!awk'{print NR,$0}'%1可能重复:%!awk“{print NR,$0}%”在视觉模式下仅对选定行进行编号的任何建议可能重复?在视觉模式下仅对选定行进行编号的任何建议?