Sublime Text 通过 rulers 设置垂直标尺(如 "rulers": [80])在指定列显示浅色虚线,作为超长行视觉提醒;它轻量、稳定、无需插件,可设多个值(如 [80, 120]),但仅作参考线,不截断或染色文本。

如何用 rulers 设置行宽标尺
Sublime Text 本身不“高亮”超长行,但能通过垂直标尺(rulers)在指定列位置画一条浅色竖线,作为视觉提醒。这是最轻量、最稳定的方式,不依赖插件,也不影响性能。
操作很简单:打开 Preferences → Settings – User,在 JSON 配置中添加 rulers 字段:
{
"rulers": [80]
}
保存后,编辑器右侧就会出现一条对齐第 80 列的虚线。你也可以设多个值,比如 [80, 120] 同时显示两条。
注意:rulers 只是参考线,不会自动截断或染色文本;它对所有文件类型生效,无需额外配置。
想真正高亮超长部分?用 highlight_line + 插件配合
Sublime 原生不支持按字符数高亮行尾内容,必须借助插件。推荐 TrailingSpaces 或更精准的 LineEndings 类插件,但最常用且可控的是 Highlighter 或自定义语法高亮规则。
更务实的做法是启用 highlight_line 并结合行号/折叠区域观察——虽然不直接标出“超 80”,但能快速定位过长行:
{
"highlight_line": true,
"rulers": [80]
}
这样当前行整行背景微亮,再结合标尺,肉眼判断效率明显提升。
常见误区:highlight_line 是高亮「当前光标所在行」,不是「超长行」;别误以为开了它就能自动标记违规行。
wrap_width 和软换行不是高亮,但能缓解阅读压力
如果你发现代码写到右边就“消失”,其实是没开自动换行。开启后,长行会视觉折行(不插入真实换行符),配合 rulers 更容易看出哪段逻辑挤占了太多宽度:
{
"rulers": [80],
"wrap_width": 80,
"word_wrap": true
}
注意:wrap_width 仅控制软换行位置,不影响实际代码;有些语言(如 Python)要求缩进对齐,软换行可能干扰视觉结构,慎用。
另外,word_wrap 设为 true 才让 wrap_width 生效;设成 auto 会让 Sublime 自适应窗口宽度,失去规范意义。
为什么不用正则高亮插件做全文件扫描
有插件(如 Highlighter)支持用正则匹配行末超长内容,例如 ^.{81,}$。但实际用起来问题不少:
- 每次保存都触发全文扫描,大文件卡顿明显
- 正则无法区分注释、字符串内的长文本,误报率高
- 不同语言对“行”的定义不同(如 JS 模板字面量允许跨行),硬匹配容易失效
所以除非你只处理纯算法脚本且文件很小,否则不建议用这类方案替代 rulers + 人工检查。真正的代码规范落地,靠的是编辑器提示 + 提交前 lint(如 eslint --max-len=80 或 flake8)。
标尺是眼睛的延伸,不是自动裁判;关键长度阈值(80/100/120)该由团队约定,而不是靠高亮“强迫”执行。










