Sublime插件配置必须写入Packages/User/插件名.sublime-settings文件才生效,而非Preferences→Settings界面;左侧默认配置只读,修改无效,右侧用户配置保存即热加载,但需确保JSON语法正确、key名准确,并通过控制台验证实际效果。

Sublime Text 的插件配置不是改“Settings”菜单里那个界面就能生效的,必须写进正确的 Packages/User/插件名.sublime-settings 文件,否则所有改动都是临时或无效的。
为什么改了 Settings 界面却没反应
菜单栏 Preferences → Package Settings → [插件名] → Settings 打开的是左右双栏结构:左侧是只读的默认配置(Packages/[插件名]/[插件名].sublime-settings),右侧才是你该编辑的用户配置文件。很多人直接在左侧改,保存后毫无效果——因为左侧根本不可写,且重启后会被覆盖。
- 右侧文件路径固定为
Packages/User/插件名.sublime-settings,首次打开时为空 JSON 对象{} - 所有配置项必须写在
{}内部,且符合 JSON 语法(注意末尾不能有多余逗号) - 如果插件名含空格或特殊字符(如
SideBarEnhancements),文件名就用原样,不转下划线 - 改完保存即生效,无需重启 Sublime;但部分插件(如 LSP)需手动执行
LSP: Restart Servers
如何确认当前配置是否被正确加载
最直接的方式是打开 Sublime 控制台(Ctrl+` 或 View → Show Console),然后触发插件行为(比如保存一个文件、调用命令面板里的插件命令)。观察是否有报错或调试输出:
- 出现
KeyError或unexpected token:JSON 格式错误,常见于漏掉引号、多加逗号、用了注释 - 出现
no such file or directory: 'prettier':prettier_cli_path路径不对,或该命令不在PATH中 - 完全没日志、也没效果:插件根本没加载,先检查文件是否放在
Packages/User/下,且后缀是.sublime-settings - 控制台输出类似
reloading plugin 插件名.plugin_name:说明插件已加载,配置正在起作用
不同插件的配置位置和命名规则
别指望所有插件都叫 xxx.sublime-settings——命名由插件作者决定,但有迹可循:
-
SublimeLinter→SublimeLinter.sublime-settings(主框架) +SublimeLinter-eslint.sublime-settings(子检查器) -
LSP→LSP.sublime-settings,里面用"clients"字段嵌套各语言服务器配置 -
HTML-CSS-JS Prettify→HTML-CSS-JS Prettify.sublime-settings(注意空格和连字符) -
JsPrettier→JsPrettier.sublime-settings(无空格,大小写敏感) - 不确定?打开
Preferences → Package Settings,看菜单项名字,就是文件名(去掉 “Settings” 后缀)
真正容易被忽略的是:插件配置不会继承、不会 fallback,写错 key 名(比如把 "lint_mode" 写成 "linter_mode")就等于没配;而 JSON 的松散容错性又不会立刻报错,只能靠控制台日志和实际行为反推——所以每次改完,务必验证一次真实效果,而不是只看文件有没有保存成功。
















