Sublime Text 显示80字符垂直参考线需在用户设置中添加"rulers": [80],必须为JSON数组格式、位于User Settings顶层,保存即生效;常见失效原因包括误改默认设置、JSON语法错误、主题隐藏线条或未在正确设置文件中配置。

怎么让 Sublime Text 显示每行 80 字符的垂直参考线
直接改 Preferences → Settings,在用户设置里加一行 "rulers": [80] 就生效。它不依赖插件,是 Sublime 原生支持的功能。
常见错误是把 rulers 写成字符串(比如 "rulers": "80")或丢在错误位置(比如写进默认设置、或者没用逗号隔开其他配置)。必须确保它是 JSON 数组格式,且位于用户设置(User Settings)的顶层对象内。
-
rulers接收数组,可以设多个值,比如[80, 120]会同时显示两条线 - 数值单位是“字符宽度”,按当前字体等宽字符算,不是像素
- 修改后无需重启,保存即刻生效;如果没反应,检查 JSON 语法是否合法(多逗号、少引号都会导致整块设置失效)
为什么改了 rulers 却不显示?常见原因排查
最常踩的坑是设置文件被意外覆盖或加载顺序出错:Sublime 同时读取默认设置(Default)和用户设置(User),后者会合并覆盖前者,但如果你误改了 Default 文件,下次升级会被重置;而 User 文件若存在语法错误,Sublime 会静默忽略整个文件,rulers 就像没写一样。
- 确认你编辑的是
Preferences → Settings – User,不是Settings – Default - 打开控制台(
Ctrl+`或Cmd+`),看有没有Invalid settings in …报错 - 检查是否启用了高对比度主题或自定义配色方案——某些主题会把参考线颜色设为透明或与背景同色,实际画出来了但看不见
- 确认当前视图没被折叠或缩放过度(虽然不影响逻辑,但可能视觉上错过细线)
想让不同项目用不同参考线(比如 Python 用 79,JSON 用 120)
靠全局 rulers 不行,得用项目专属设置。Sublime 支持基于文件类型或项目路径的动态配置,核心是利用 settings 的嵌套能力。
方法有两种:
- 在项目文件(
.sublime-project)的"settings"下加"rulers": [79],对整个项目生效 - 在语法特定设置里配:新建或编辑
Preferences → Settings – Syntax Specific(注意右下角状态栏要先切到对应语言,比如 Python),然后写"rulers": [79] - 语法级设置优先级高于项目级,项目级又高于全局;但所有设置都只影响新打开的文件,已打开的需重新加载或切换语法再切回来
参考线会影响性能或光标行为吗?
完全不会。垂直参考线只是渲染层的静态辅助线,不参与语法解析、不触发任何事件、也不增加 DOM 节点(Sublime 没 DOM)。无论开 1 条还是 10 条,对滚动、输入、搜索毫无影响。
唯一要注意的是:它不自动适配换行软包装(word_wrap: true)。开启软换行后,参考线仍按原始行长度计算,不会跟着折行位置移动——这是设计使然,不是 bug。
真正容易被忽略的是:参考线本身没有“激活/禁用”开关,只能靠删掉 rulers 配置来隐藏;也没有快捷键临时切换,得手动改设置再保存。










