Sublime Text 行间距应使用 line_padding_top 和 line_padding_bottom(整数像素值)而非 line_height;后者在 ST4 中基本失效,易被主题、插件或语法设置静默覆盖,且不报错。

Sublime Text 的行间距不能靠 line_height 可靠调节,真正起作用、且跨版本稳定的只有 line_padding_top 和 line_padding_bottom 这两个整数像素值。
为什么改了 line_height 没反应?
这不是你配错了,是它在 Sublime Text 4 中已基本失效:设小数(如 1.4)常被忽略;设整数(如 20)可能被主题(ayu、Soda)、插件(Origami)或语法专属设置(Python.sublime-settings)静默覆盖。更麻烦的是——不报错、不提示,只“假装生效”。
- 确认你改的是 Preferences → Settings 右侧「User Settings」,不是左侧只读的 Default
- 检查 Preferences → Settings – Syntax Specific 里是否也写了
line_height,它会优先覆盖全局 - 临时切换成内置主题
Adaptive测试:如果这时行距变了,说明原主题在.sublime-theme里硬重置了该值
line_padding_top 和 line_padding_bottom 怎么配才稳?
这才是 Sublime 渲染引擎真正读取的底层参数,单位是整数像素,加起来就是你看到的“两行文字之间的空白高度”。它不依赖字体度量,中英文混排也不裁切标点。
- 新手起步推荐:
"line_padding_top": 3,"line_padding_bottom": 3(总 +6px),适配font_size14–16 的等宽字体 - 想缓解视觉压迫感?试试不对称:
"line_padding_top": 4,"line_padding_bottom": 2,文字轻微下沉,光标线更居中 - 绝对不要只设一个为 0(比如只写
line_padding_top),否则光标对齐错乱、折叠图标偏移 - 值必须是整数,支持 0–8;超过 10 容易造成滚动时跳动感变强
改完没变化?先查这三处加载链路
90% 的“白调”问题出在配置没真正加载进去,而不是参数本身。
- 确认修改位置:Preferences → Settings 右侧 User Settings 面板,顶层 JSON 对象内直接写,别嵌套在
font_face或其他字段下 - 检查 JSON 格式:中文引号、末尾多逗号、缩进不合法都会导致整份配置静默失效(Sublime 不报错)
- 当前用了自定义字体(如
Fira Code)?保存后按Ctrl+R刷新当前视图,或切换 Tab,否则渲染可能卡在旧缓存
注意:line_padding_top 和 line_padding_bottom 只影响代码编辑区正文,侧边栏、标签页、行号栏(Gutter)完全不受控——那些区域得去改主题文件里的 ui_line_height 或 .sublime-theme,而且 Windows/macOS/Linux 渲染差异会导致同一组值实际差 1–2px,这不是 bug,是底层渲染器(GDI/Core Text/FreeType)的固有特性。


















