You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vim 8:列表重排序后如何手动或自动重新编号?

如何在Vim中重新编号有序列表或自动维护序号?

先看实际场景:
原本的有序列表:

1. apple
2. banana
3. orange
4. plum

调整行顺序后编号变得混乱:

2. banana
1. apple
4. plum
3. orange

快速重新编号的方法

用V模式选中整个混乱的列表行,然后执行以下命令:

:s/^\d\+\./\=line('.') - line("'<") + 1 . '.'

这个命令会把每行开头的数字替换成从1开始的连续序号,原理是通过计算当前行在选中区域内的相对位置,自动生成正确的编号。

让Vim自动维护有序列表

如果想从根源避免手动调整后编号混乱,可以在Vim配置文件(~/.vimrc或Windows下的_vimrc)中添加以下设置:

set autoindent
set formatoptions+=n

开启后,在有序列表的行尾按回车时,Vim会自动生成下一个连续的序号;后续如果仍需要调整行顺序,再用上面的重新编号命令即可。

内容的提问来源于stack exchange,提问作者wxz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 08:47:31