highlight-words插件需手动配置才生效,必须在settings.json中设置highlightwords.colors、defaultmode等参数并重启vscode;vscode-highlight更适合正则匹配如todo标记,需用双反斜杠转义且执行force decorate命令。

highlight-words 插件必须手动配置才能生效
只安装 highlight-words 插件,高亮功能默认是关闭的。它不像语法高亮那样开箱即用,所有行为都依赖 settings.json 中显式配置项驱动。
-
highlightwords.colors必须定义至少一个颜色对象,否则高亮无背景色(常见现象:选中后没反应) -
highlightwords.defaultMode建议设为1(全词匹配),避免高亮if时把ifstream里的if也标出来 -
highlightwords.box控制是否加边框,{"dark": true}在深色主题下更醒目,但会略微增加视觉干扰 - 配置完需重启 VSCode 或重载窗口(
Ctrl+Shift+P→Developer: Reload Window),仅保存 settings.json 不够
vscode-highlight 更适合正则匹配类高亮
如果你要高亮 // TODO:、FIXME、BUG 这类固定前缀的注释或标记,vscode-highlight 比 highlight-words 更直接——它原生支持正则捕获组,能对不同部分应用不同样式。
- 正则必须双反斜杠转义,比如匹配
// TODO:要写成"(// TODO:)(.*)",不能漏掉括号和引号 - 每个捕获组对应一个样式对象,
[{"backgroundColor":"#ffbb00"},{"backgroundColor":"#ffbb00"}]表示两段都黄底黑字 - 修改
highlight.regexes后不会自动刷新,得手动执行Highlight: Force Decorate命令(Ctrl+Shift+P调出) - 不支持跨文件高亮,只作用于当前打开的编辑器,这点和
highlight-words不同
别误装 Color Highlight 或 Bracket Pair Colorizer
这两个插件根本不是为“关键字高亮”设计的,装了也没用。
-
Color Highlight只识别颜色字面量,如#ff6b6b、rgb(255, 107, 107),对普通变量名、函数名完全无响应 -
Bracket Pair Colorizer专管括号配对染色,连if、for这种关键字都不会碰 - 搜索插件时认准名字:
highlight-words(作者fabiospampinato)或vscode-highlight(作者同为fabiospampinato),其他同名变体大多已废弃或功能阉割
快捷键绑定容易被忽略的细节
VSCode 默认没给高亮命令绑快捷键,得自己加。但直接按 Ctrl+F8 会和系统快捷键冲突(尤其 Windows),建议改用 Ctrl+H 或 Alt+H。
- 在快捷键设置里搜
highlight.toggleCurrent(highlight-words)或highlight.toggle(vscode-highlight) - 绑定后务必测试两次:第一次高亮,第二次取消——这是唯一确认插件真正工作的办法
- 如果按快捷键没反应,先检查是否处于编辑器焦点(不是终端、不是设置页),再看有没有其他插件劫持了该组合键
highlight-words 适合临时追踪某个变量或宏定义的全项目出现位置,vscode-highlight 更适合长期维护的语义标记。两者不冲突,可以共存,但配置项别混写进同一个 settings.json 区块里——容易覆盖。











