Sublime的rulers配置必须写在Preferences → Settings – User的JSON中,格式为"rulers": [80],误改Default、语法专用文件或JSON语法错误均导致失效;需确认等宽字体、主题对比度及插件干扰。

Sublime 的 rulers 配置必须写在用户设置里
垂直参考线不是开关式功能,没有菜单一键开启,rulers 字段必须手动加进 Preferences → Settings – User 的 JSON 对象中,否则完全不生效。
常见错误包括:
- 误改了左侧的 Default 设置(只读,改了也无效)
- 把配置写进了某个语法专用文件(如 Python.sublime-settings),但当前文件不是对应类型
- 复制粘贴时带了中文引号或全角符号,导致 JSON 解析失败
正确做法:打开设置后,确保光标落在右侧「User」面板,添加一行(注意逗号位置):
"rulers": [80]
保存即刻显示,无需重启。
为什么写了 rulers 却看不到线?检查这三处
标尺不出现,90% 是视觉被掩盖或配置未命中,而不是功能失效。
- 主题/配色方案把标尺颜色设得太淡(比如和背景同色)——临时切换到
Monokai或Default主题验证 - 插件干扰(如
TrailingSpaces、Origami)可能禁用 rulers 渲染——禁用插件后测试 - 当前视图启用了
word_wrap且折行严重,导致标尺线被挤出可视区——关闭软换行再观察
如果仍不显示,复制整个设置内容到 JSONLint 验证语法是否合法。
Python 项目要 79 列,JS 要 100 列?用语法专属设置
全局 rulers 不够灵活,不同语言规范不同,直接在语法专属设置里覆盖更可靠。
操作路径:Preferences → Settings – More → Syntax Specific – User,然后选中当前语言(如 Python),填入:
{ "rulers": [79] }
这个文件会自动保存为 Python.sublime-settings,只对 .py 文件生效。多个语言可共存,互不影响。
- PEP 8 推荐 79,所以 Python 通常设
[79] - JavaScript 社区常用
[100]或[80, 120],前者严控,后者留注释余量 - 数值按升序排列,
[80, 120]会从左到右依次画两条线
rulers 是字符列数,不是像素,等宽字体是前提
Sublime 按「逻辑字符数」定位标尺:空格、制表符、英文、中文都算 1 列。但它对齐准不准,取决于字体是否等宽。
- 非等宽字体(如
Helvetica、Microsoft YaHei)会导致标尺视觉偏移,尤其中英文混排时 - 务必确认当前字体是等宽的:打开控制台(
View → Show Console),输入sublime.active_window().active_view().settings().get('font_face') - 推荐值:
"font_face": "Fira Code"、"font_face": "JetBrains Mono"、"font_face": "SauceCodePro Nerd Font"
标尺本身不干预输入、不强制换行、不报错——它只是个静态视觉锚点。真要约束代码宽度,得靠 Black、Prettier 这类格式化工具配合使用。











