sublime行间距主要由line_padding_top和line_padding_bottom控制,而非line_height;后者行为特殊且版本兼容性差,设0交由字体决定,整数为像素值,小数为倍数,但易静默失效。

Sublime 的行间距不是靠 line-height 一值统管,而是由 line_padding_top 和 line_padding_bottom 两个独立像素值控制;改错参数或混用 line_height 会导致设置静默失效。
为什么改了 line_height 没反应?
部分文档提到 line_height,但它在 Sublime 中行为特殊:设为 0 表示交由字体决定;设为整数(如 24)是绝对像素值;设为小数(如 1.4)才表示相对于 font_size 的倍数。但关键问题是:line_height 并非所有版本都稳定支持——尤其在较新版本中,它可能被忽略或仅在特定渲染路径下生效。
更可靠、始终起作用的是 line_padding_top 和 line_padding_bottom,它们直接作用于每行文字的上下留白,且修改后保存即刻生效,无需重启。
- 默认值都是
0,所以新装 Sublime 看起来特别紧凑 - 设成
"line_padding_top": 3, "line_padding_bottom": 3,视觉等效于 +6px 行距 - 可不对称设置,例如
top: 4, bottom: 2,有助于光标视觉居中、缓解阅读压迫感 - 若已存在其他配置,插入时注意前面加逗号,结尾不加多余逗号
侧边栏、标签页、行号栏的行距怎么调?
line_padding_top 和 line_padding_bottom 只影响代码编辑区,对左侧文件树、顶部标签页、行号栏(Gutter)完全无效。这些区域由当前主题文件(.sublime-theme)控制。
操作路径:
- 先安装插件
PackageResourceViewer(Ctrl+Shift+P→ 输入Install Package) -
Ctrl+Shift+P→PackageResourceViewer: Open Resource→ 选当前主题(如Theme - Default)→ 打开Default.sublime-theme - 搜索
"class": "sidebar_tree",添加或修改"row_padding": [8, 4](第二个数字是垂直间距) - 同理,搜
"class": "tabset_control"调标签页高度;搜"class": "gutter"调行号栏内边距
注意:主题文件是 JSON 数组,不是对象,修改时需保持结构合法;改完保存,Sublime 会自动重载主题。
字间距(letter-spacing)能调吗?
Sublime 原生不支持 letter-spacing 类配置。尝试通过 font_options 强行干预字体渲染,效果极有限,还容易引发模糊或锯齿。
真正有效的做法是换字体:
- 选用 Fira Code、JetBrains Mono、Cascadia Code 这类专为编程设计的等宽字体,它们出厂就优化了字符间距和字形密度
- 配合开启连字(
"font_options": ["ligatures"]),可进一步提升识别效率 - 若仍觉过密,可微调
font_size(如从12改为12.5),间接放松视觉密度
别在 font_options 里塞 "antialias" 或 "no_round" 等非常规项——不同系统渲染链路差异大,同一配置在 Windows/macOS 上表现可能截然相反。
最易被忽略的点:行号栏(Gutter)和编辑区行距是两套系统,line_padding_* 对它完全无效;而主题文件里的 row_padding 是数组,写成 [4, 4] 和 [0, 8] 视觉效果不同——前者上下均分,后者只在下方加空,会影响断点图标对齐。











