sublime text 的当前行高亮是背景色加深而非下划线,由 highlight_line 控制,需确保设置为 true 并在配色方案中定义足够对比度的 highlightline.background。

Sublime Text 怎么开启当前行高亮(不是下划线)
Sublime Text 默认没有“下划线当前行”这个功能,你看到的 highlight_line 是背景色高亮整行,不是加下划线。想实现视觉上更醒目的当前行标识,得靠它——但很多人误以为它能画线,结果开了没反应,其实是理解错了作用方式。
-
highlight_line控制的是当前行背景色是否加深(默认已启用),不是添加下划线或边框 - 它只在光标停留时生效,不随滚动保留;且对折叠区域、命令面板等非编辑区无效
- 如果开了但看不出变化,大概率是当前配色方案(color scheme)里
highlight_line对应的背景色和普通行太接近,比如都是深灰 - 修改方法:打开
Preferences → Settings – User,确保有"highlight_line": true;再检查所用主题的 .sublime-color-scheme 文件中是否有"highlightLine"项并设了足够对比度的"background"
想加真正下划线?得用插件或自定义 CSS
Sublime 原生不支持给当前行加下划线(underline)、边框(border)或阴影(box-shadow)。硬要实现,只有两个靠谱路径:一个是装插件动态注入样式,另一个是改用户 UI 主题 CSS —— 后者更轻量但需手动维护。
- 推荐插件:
BracketHighlighter或HighlightWords都不直接支持行下划线;真正可用的是SublimeHighlight(注意拼写),但它已多年未更新,兼容性差 - 更稳的做法:在
Package/User/Default.sublime-theme中追加 rule,匹配"class": "line_control"并加"layer0.opacity": 0.1和"layer0.tint": [255, 215, 0]模拟浅黄底纹,视觉上比纯背景色更突出 - 别碰
line_number类 rule——它只影响行号栏,不影响编辑区正文行 - 改 theme 文件后必须重启 Sublime 才生效,且每次升级 Sublime 可能重置默认 theme 路径,建议备份
为什么不用 draw_centered 或 word_wrap 搞错方向
这两个设置常被搜到,但完全无关:前者控制文字是否居中显示(仅对单行文本有效),后者控制长行是否自动换行。它们既不触发高亮,也不影响当前行渲染逻辑。
-
draw_centered开启后,整文件会强制居中,但光标所在行没有任何额外标记 -
word_wrap开启后,软换行产生的“伪行”不会被highlight_line识别——只有物理换行符(\n)所在的行才算“一行” - 试图通过改
font_face或font_size让当前行变粗/变大?不行。Sublime 不支持按行动态调整字体属性
Mac / Windows / Linux 下 highlight_line 行为一致吗
行为完全一致,但实际观感可能不同——因为各系统默认字体渲染、DPI 缩放、甚至显卡驱动都会影响背景色叠加后的明暗对比度。尤其 macOS 的 Retina 屏 + subpixel 渲染会让轻微背景色变化更难察觉。
- Windows 上若用了第三方主题(如 Material Theme),它的
highlight_line样式可能被覆盖,需检查该主题的.sublime-color-scheme是否禁用了highlightLine - Linux 下 Wayland 会话中,某些 compositor(如 Hyprland)可能截获 Sublime 的透明绘制请求,导致高亮色发虚或消失
- 最保险的验证方式:临时切换成默认
Monokai主题,再开highlight_line,看是否明显——如果还看不见,基本就是设置没生效,而不是系统问题
highlightLine 配置项,而不是你眼睁睁看着的 Settings – User。










