highlight-words支持按语义分色标记关键词,需在settings.json中配置highlightwords.words数组,每个对象指定word、color索引及regex/caseSensitive等属性,并确保color值对应highlightwords.colors数组项,同时注意语言ID匹配和配置重载。

怎么用 highlight-words 按语义分色标记关键词
直接改 highlightwords.colors 数组就能让不同词走不同颜色,但关键不是填颜色,而是把词和颜色对上业务逻辑。比如你总要扫 TODO、FIXME、DEBUG,那就别全塞进一个颜色里。
- 打开
settings.json,找到或新建highlightwords.words数组 - 每个元素是对象:
{"word": "TODO", "color": 0}—— 这里的0指向highlightwords.colors数组第 0 项 - 别漏掉正则:想匹配所有
console.log变体,写{"word": "console\.(log|warn|error)", "color": 2, "regex": true} - 注意大小写:默认区分,加
"caseSensitive": false才能同时捕获todo和TODO
为什么文件标签染色要用 [python] 而不是 ".py"
VSCode 的 tab.activeBackground 不认后缀,只认语言 ID。你右下角看到 “Python”,实际语言 ID 是 python;看到 “JSONC”,ID 是 jsonc。硬写 ".py" 会完全失效。
- 按
Ctrl+Shift+P→ 输入Change Language Mode,看状态栏显示的 ID - 在
workbench.colorCustomizations里必须用方括号包裹:"[python]": {"tab.activeBackground": "#4b5563"} - 没装 Python 扩展?
[python]配置不会生效 —— 插件和语言支持必须同时到位 - 颜色值只接受十六进制(如
#ff6b6b),rgb(255,107,107)或red会被忽略
indent-rainbow 怎么避免干扰 Markdown 和配置文件
缩进彩虹在 Python/JS 里很直观,但在 .md 或 .env 里纯属视觉噪音。它不靠文件后缀判断,而靠语言 ID,所以得主动排除。
- 查当前文件语言 ID:同上,用
Change Language Mode确认是markdown还是plaintext - 在
settings.json中设置indentRainbow.excludeLanguages,填数组:["markdown", "plaintext", "log"] - 别信“自动识别”:.env 文件默认是
plaintext,不是dotenv,除非你手动绑定了语言关联 - 改完记得重启 VSCode 或重载窗口,配置不会热更新
Color Highlight 渲染失败时先查哪三件事
色块不出现,90% 是环境没对齐,而不是插件坏了。
- 右下角语言模式是不是
css、scss、html?Plain Text下它压根不干活 - 检查
editor.decorations是否为true—— 关了这个,所有装饰(包括色块、高亮线)全消失 - 确认主题没禁用颜色渲染:某些极简主题会覆盖
editorWidget.background,导致色块透明或不可见
真正起作用的从来不是“装了多少插件”,而是每种颜色是否承载明确语义、每条规则是否绑定到准确的语言 ID、每次配置是否验证过实际效果。配色容易,让颜色说人话才难。











