需将 editor.renderLineHighlight 设为 all 实现整行背景高亮;颜色由主题变量 editor.lineHighlightBackground 决定,可通过 workbench.colorCustomizations 自定义;注意插件冲突及终端等区域不支持该设置。

设置 editor.renderLineHighlight 为 all 或 gutter
VSCode 默认只在行号栏(gutter)加一个浅色标记,不是整行背景高亮。要让光标所在行有明显背景色,必须改这个配置项。
打开设置(Ctrl+, 或 Cmd+,),搜 renderLineHighlight,把值从默认的 line 改成:
-
all:整行背景高亮(最常用) -
gutter:只在行号栏加竖条(视觉最轻) -
none:关闭(不推荐)
注意:line 是旧版值,已弃用;新版 VSCode(1.85+)设成 line 会自动 fallback 到 gutter,但行为不一致,别用。
高亮颜色由当前主题决定,不能直接改「高亮色」
VSCode 没有单独的「当前行背景色」设置项。它复用主题定义的 editor.lineHighlightBackground 颜色变量。
如果你用的是默认主题(如 Default Dark+),这个颜色通常偏灰、透明度低,看起来不明显——这不是设置错了,是主题本身没配醒目的值。
想调颜色,得改主题或加自定义 token color:
- 打开
settings.json(快捷键Ctrl+Shift+P→ 输入Preferences: Open Settings (JSON)) - 加这段:
"workbench.colorCustomizations": {
"editor.lineHighlightBackground": "#2a2d39"
}
颜色值建议用带一定透明度的深色(比如 #2a2d3940),否则在深色主题下会盖住语法高亮。
开启后仍不生效?检查是否被扩展或插件覆盖
某些代码高亮类插件(比如 Bracket Pair Colorizer 旧版、Highlight Line 等)会自己注入行高亮逻辑,和原生 renderLineHighlight 冲突。
常见现象:
- 光标移过去,高亮延迟半秒才出现
- 切换文件后高亮消失
- 只有部分语言生效(比如只在
.js里亮,.py不亮)
解决办法很简单:禁用疑似插件,重启 VSCode,确认原生功能是否恢复。真要用第三方高亮,优先选声明支持 VSCode 1.80+ 原生 API 的新版本。
终端/调试控制台里不生效是正常的
editor.renderLineHighlight 只作用于编辑器主区域(即你写代码的 tab)。它对以下场景完全无效:
- 集成终端(
Terminal面板) - 调试控制台(
Debug Console) - 输出面板(
Output) - 问题面板(
Problems)
这些地方没有「编辑器行高亮」概念,也不走同一套渲染逻辑。别折腾 setting.json 里加各种 colorCustomizations —— 它们根本不会读那个变量。
真正难搞的是多光标编辑时的高亮叠加:多个光标会同时触发高亮,颜色可能变深或闪烁,这时候靠调整透明度比换纯色更稳妥。











