我如何添加行号的范围VIM行?不在“:set nu”中 - 这只是显示数字,但不会将它们添加到文件中。添加行号的源代码在vim
回答
随着
:%s/^/\=line('.')/
编辑:总结评论。
该命令可以根据需要调整。
比方说,你想从一个目测可供选择(V
+移动)的行前加数字,要编号开始在42
:'<,'>s/^/\=(line('.')-line("'<")+42)/
如果您想要在行和行之间添加一个字符串,只需连接(与VimL中的.
)它与数字表达式:
:'<,'>s/^/\=(line('.')-line("'<")+42).' --> '/
如果您需要此排序为文本,你可能要填零的结果,可使用printf
为0001, 0002
做...而不是1, 2
...如:
:%s/^/\=printf('%04d', line('.'))/
无论如何,如果你想了解更多信息,只需打开vim的帮助::h :s
,并按照链接(|subreplace-special|
,...,|submatch()|
)
cat -n
添加行号的输入。您可以将当前文件传输到cat -n
,并将当前缓冲区替换为输出到stdout的内容。好在这个复杂的解决方案是在vim少于10个字符:
:%!cat -n
或者,如果你想只是部分选定,直观地选择该地区,并输入:
:!cat -n
,它会自动把视觉选择标记中,并且看起来像这样你输入之后:
:'<,'>!cat -n
为了擦除的行号,我建议使用control-v
,这将使你可以直观地选择一个矩形,然后你可以用x
删除那个矩形。
使用类似于UNIX的环境中,你可以使用cat或awk来容易产生行号,因为Vim与外壳界面友好,所以一切工作的vim,以及它在外壳。
从Vim Tip28:
:%!cat -n
或
:%!awk '{print NR,$0}'
但是,如果你在MS-DOS使用vim,WIN9X,WIN2000,你亏这些工具包。 这里只有通过VIM归档这是一个非常简单的方法:
fu! LineIt()
exe ":s/^/".line(".")."/"
endf
或者,用字母组成的序列是那么容易,因为上面:
exe "s/^/".nr2char(line("."))."/"
您也可以使用SUBST:
:g/^/exe ":s/^/".line(".")."^I/"
也只能想打印线,而不将其添加到文件:
“有时候可能会很有用,尤其是编辑大型源文件以在纸上打印行号。
要做到这一点,你可以使用选项:set printoptions=number:y
激活和:set printoptions=number:n
停用此功能。
如果行号应该总是打印,放置线set printoptions=number:y
在vimrc
“
在第一个例子中,您是不是指“猫”而不是“呼叫”? – 2011-01-12 19:02:17
在一个GNU系统:与外部nl
二进制:
:%!nl
的"VisIncr"插件适用于插入一般(或字母,日期,罗马数字等)递增数字的列。您可以控制数字格式,填充等。因此,在每行的前面插入“1”(通过:s
或:g
或可视块插入),在可视块模式下突出显示该列,然后运行插件中的其中一个命令。
首先,你可以,如果你需要删除现有的行号:
:%s/^[0-9]*//
然后,您可以添加行号。 NR
指的是从当前行号开始,所以你可以做一些数学来获得你想要的编号。下面的命令给你四位数的行号:
:%!awk '{print 1000+NR*10,$0}'
- 1. 代码和行号之间的Vim行
- 2. 用vim在多行中添加引号
- 3. NLog ::将源代码行号添加到日志中
- 4. eclipse ASTNode源代码行号
- 5. vim 1.14源代码undo.c
- 6. 在代码中添加新行代码
- 7. 使用vim在指定的行号处快速添加空行?
- 8. 添加星号用vim
- 9. 在代码后面添加资源
- 10. 未找到源代码:添加源代码附件查看源代码
- 11. 源代码Vim中的面包屑
- 12. 添加软垫递增编号在VIM
- 13. 添加Android源代码来的IntelliJ
- 14. 使用HTML敏捷包在HTML源代码中添加换行
- 15. 如何在CKEditor中添加源代码换行符4.4
- 16. 在<table>中添加新行后查看源代码
- 17. 如何在多行代码前添加#号?
- 18. 从vim运行ruby代码
- 19. 从源代码编译VIM - 失败libncurses6
- 20. 如何从源代码构建vim 7.3.285
- 21. 添加源代码构建路径?
- 22. Vim添加并对齐新行并自动在引号内
- 23. 动态添加按钮和添加他们的源代码
- 24. 如何在Vim中同时添加代码和评论?
- 25. 有没有办法在运行时用C代码获取源代码行号?
- 26. 添加/分配号码重复的行
- 27. Python:在代码块的每一行添加代码例程
- 28. 直接在Vim中运行python代码
- 29. Vim在C/C++代码行中搜索
- 30. 如何添加代码在运行时
如果你想让行号从0开始而不是1? – Nils 2011-05-11 08:34:16
删除第一行,为其余的编号。之后以首位'0'读取第一行。 ;) – sjas 2012-07-20 08:13:13
这就是答案! – user3751385 2017-07-28 04:27:15