有没有办法让Vim的行号从0开始计数?
Vim固定行号从0开始计数配置方案
你需要的是静态不变、首行固定为0的行号效果,不需要使用相对行号set rnu,直接通过修改行号列的显示逻辑即可实现:
- 如果你使用的是Vim 9.0及以上版本,直接在你的
.vimrc配置文件中写入以下内容,替换原有和行号相关的配置即可:
" 开启行号显示 set number " 自定义行号列显示内容,将原生行号减1,实现从0开始计数 set statuscolumn=%=%{v:lnum-1}\
- 配置说明:
v:lnum是Vim内置变量,对应每一行的原生1开头的行号,执行减1运算后就可以得到0开头的行号%=用于设置行号右对齐,符合默认行号的显示习惯- 配置末尾的空格用于在行号和正文之间保留间隔,避免内容拥挤
- 如果你使用的是低于9.0的老版本Vim,也可以安装自定义行号类插件,修改插件的行号起始值参数为0即可实现相同效果。
配置完成后重启Vim或者执行:source ~/.vimrc生效,行号会固定从0开始顺序递增,不会跟随光标移动发生变化。
内容的提问来源于stack exchange,提问作者Sigshane
相关产品推荐
相关产品推荐

