应于packages/user/下创建与当前theme值同名的.sublime-theme文件并编辑,如"default.sublime-theme";修改其中"class": "quick_panel_label"规则的"font.face"和"font.size"字段可定制命令面板字体,保存后需重启生效。

Sublime Text 的 UI 主题(theme)不是普通 JSON 设置项,它由 .sublime-theme 文件定义,必须通过编辑主题文件本身来修改 UI 元素样式——比如命令面板字体、侧边栏圆角、标签页高度等。直接改 Preferences.sublime-settings 里的 "theme" 值只能切换主题,不能定制细节。
怎么定位并安全覆盖当前 UI 主题文件
UI 主题生效靠的是 .sublime-theme 文件,而 Sublime 默认不让你直接改内置主题(如 Default.sublime-theme),否则升级后会被覆盖。正确做法是:在 Packages/User/ 目录下创建同名文件,让 Sublime 自动优先加载它。
- 先查你当前用的 theme 名:打开
Preferences → Settings,看右侧用户设置里"theme"的值,比如"theme": "Default.sublime-theme" - 进
Preferences → Browse Packages,打开User/文件夹 - 新建文件,命名为和 theme 值完全一致的名字,例如
Default.sublime-theme(注意后缀是.sublime-theme,不是.json) - 把原始主题文件内容(可从
Packages/Default.sublime-package中解压获得)复制进去,再开始改——这样既保留结构,又避免覆盖风险
修改命令面板(Quick Panel)字体和大小的关键字段
命令面板属于 UI 组件,它的样式由 .sublime-theme 中匹配 "class": "quick_panel_label" 的 rule 控制。只改这一处,就能精准影响面板里每一行文本的显示效果。
- 在你刚建的
User/Default.sublime-theme文件中,找或添加如下结构:
{
"class": "quick_panel_label",
"attributes": ["selected"],
"font.face": "Fira Code",
"font.size": 13
}
font.face 必须是系统已安装的字体名,带空格需加引号;font.size 是数值,非字符串"attributes" 的同类 rule为什么改了 theme 文件但 UI 没变化
常见失效不是因为语法错,而是主题规则没命中目标元素,或者被更高优先级的 rule 覆盖了。UI 主题系统依赖 class 层级和 attributes 精确匹配,漏一个条件就无效。
- 确认你改的是当前激活的 theme 文件名,比如用了
Adaptive.sublime-theme却去改Default.sublime-theme - 检查 rule 的
"class"是否拼错,比如写成quick_panel_lable(少了个b) - 某些主题会把 quick panel 分成
quick_panel_row和quick_panel_label两层,只改 label 不影响背景色或行高 - 如果用了第三方主题(如 Material Theme),它的自定义 rule 可能封装在
Material-Theme.sublime-theme里,得去对应文件改,而不是User/Default.sublime-theme
真正难的不是写对 JSON,而是搞清 Sublime 的 UI 渲染路径:theme 文件 → class 定义 → attributes 条件 → 最终样式。改错一层,整块就挂。建议每次只动一个 rule,重启验证,再继续。











