vscode 默认关闭行号,需手动开启:通过设置搜索 editor.linenumbers 并设为 "on",或在 settings.json 中添加 "editor.linenumbers": "on"(注意值必须为字符串)。

怎么在 VSCode 里打开行号显示
默认是关的,得手动开。不开的话调试、跳转、写 Git blame 都不方便。
打开设置最直接:按 Ctrl+,(Windows/Linux)或 Cmd+,(macOS),搜索 editor.lineNumbers,把它设为 on 就行。
也可以改 settings.json,加这一行:
"editor.lineNumbers": "on"
注意别写成 true 或 "true" —— 它只认字符串值:"on"、"off"、"relative" 或 "interval"。
绝对行号 vs 相对行号怎么切
相对行号显示的是「当前光标所在行到其他行的距离」,对 vim 模式或键盘跳转(比如 gg、5j)特别有用;绝对行号就是常规的 1、2、3…
切换方式一样,还是改 editor.lineNumbers 的值:
-
"on"→ 绝对行号 -
"relative"→ 相对行号(光标所在行为 0,上下依次 ±1、±2…) -
"interval"→ 每 10 行标一个绝对行号(比如第 10、20、30 行显示数字,其余为空)
改完不用重启,实时生效。但要注意:相对行号在折叠代码块时可能让数字“跳变”,比如展开/收起函数后,下方行的相对值会重算——这不是 bug,是设计如此。
为什么改了 settings.json 没反应
常见原因有三个:
- 写错了字段名,比如拼成
editor.lineNumber(少个s)或line_numbers(VSCode 不认下划线) - 加了注释(JSON 不支持 // 或 /* */ 注释),导致整个配置加载失败
- 工作区设置覆盖了用户设置:检查右下角有没有显示
Workspace,点它进去看是不是editor.lineNumbers被设成了off
快速验证是否生效:打开任意文件,按 Ctrl+Shift+P 输入 Preferences: Open Settings (JSON),确认值正确且没语法错误。
终端或 diff 视图里行号不显示怎么办
VSCode 的行号只作用于编辑器主区域,Terminal、Git: Show Changes、Search: Find in Files 这些视图默认不显示行号,也没法通过 editor.lineNumbers 控制。
如果在终端里需要行号,得靠命令本身,比如 cat -n file.js 或 less -N file.js;diff 里想定位,直接点左侧变更块,光标会跳到对应行——行号虽不显示,但跳转逻辑照常工作。
这点容易忽略:以为全局设置能管所有面板,其实不能。











