Sublime Text 从 build 3143 起默认开启 highlight_word 功能,光标悬停单词即高亮所有匹配项;常见“看不见”是因 highlight_line 开启、暗色主题对比度低或用户设置中存在 "highlight_word": false。

Sublime 默认就高亮相同词,但你可能根本没看见
Sublime Text 从 build 3143 开始,默认开启 highlight_word 功能——光标停在任意单词上(不用选中),所有完全匹配的文本都会被浅色背景高亮。这不是插件行为,是原生能力。很多人以为没生效,其实是被干扰了。
-
highlight_line开启后整行背景变深,会盖住单词高亮的浅色背景,造成“看不见”的错觉 - 暗色主题(如 Monokai、Dracula)常把高亮色设成接近背景的灰,视觉对比度极低
- 用户设置里若存在
"highlight_word": false,会直接关闭该功能(尽管默认不写这一项)
怎么确认并打开高亮功能
别猜,直接查配置。重点不是“加什么”,而是“有没有被关掉”或“被谁盖住了”。
- 打开
Preferences → Settings,看右侧用户设置面板里是否含"highlight_word": false—— 如果有,删掉或改为true - 检查是否误开了
"highlight_line": true;如果不需要行高亮,建议暂时关掉它来排除干扰 - 保存后无需重启(多数新版本即时生效),但部分旧版需重启 Sublime 才加载
- 测试方法:打开一个 Python 文件,把光标停在
def上,看其他def是否出现浅灰底色
为什么光标停着不动也高亮?想只在选中时才触发
原生 Sublime 没有“仅选中时高亮”的开关。所谓“光标悬停即高亮”,正是 highlight_word 的设计逻辑。想改成“只在选中时才高亮”,必须借助插件。
- 原生设置里没有
highlight_when_selection_empty这种参数,它属于插件(如WordHighlight)的私有配置 - 安装
WordHighlight后,在其WordHighlight.sublime-settings中设:"highlight_when_selection_empty": false - 注意:如果同时装了
BracketHighlighter或HighlightWords,它们也可能接管高亮逻辑,需一并检查或禁用 - 副作用:插件高亮通常比原生慢一点,大文件中滚动时偶有延迟
高亮颜色太淡?别硬调主题,先换配色方案
改 .tmTheme 文件调 markup.highlighted scope 是可行的,但绝大多数人没必要动那么深。更直接有效的路径是换一个对高亮友好的主题。
- 在
Preferences → Color Scheme中切换到Material Theme或One Dark,这两个主题对highlight_word的背景色定义更清晰 - 如果坚持用 Monokai,可临时用 Package Control 安装
Dayle Reckless Highlight插件,它会覆盖原生高亮样式,提供更醒目的边框+背景组合 - 避免手动修改主题文件时误删 XML 结构——一个错位的
</dict>就会让整个主题失效,且控制台不报错
highlight_line 和暗色主题联手把它藏起来了。










