Sublime Text 原生不支持保存自动格式化,必须安装并手动启用第三方插件;JsPrettier(需全局或项目级 prettier)、AutoPEP8(需 pip 安装)是主流选择,配置需注意文件类型识别、路径设置及排除目录。
Sublime 必须装插件才能保存自动格式化
原生 Sublime Text 不支持“保存即格式化”,
这类 VSCode 风格的开关根本不存在。所有自动格式化能力都来自第三方插件,且必须手动开启——插件安装完默认是关闭的。
别信“装完就生效”的说法,90% 的人卡在这一步
禁用已停止维护的
:它在 Sublime Text 4 下大概率抛
或直接无响应
JS/TS/JSON 推荐
;Python 项目用
;通用需求可选
(但配置更复杂)
别同时装多个格式化插件——它们都监听
,会互相覆盖或静默失效
JsPrettier:JS 文件保存自动格式化的实操配置
不是独立工具,它只是调用本地
CLI。没装 prettier,插件就只是个空壳。
先全局安装:
(或
)
路径要配对:如果用
或项目级
,把
改成
,注意这是相对于当前文件路径,不是项目根目录
用户配置路径:
关键配置项(必须写全):
强烈建议加上——否则一保存
,Sublime 可能直接卡死
AutoPEP8:Python 文件怎么和 VSCode 的 Black 体验接近?
行为比
保守,默认不改缩进、不强制单引号、不重排 import,但它稳定、轻量、兼容 ST4。
仿Sublime和notepad++编辑器效果
仿Sublime和notepad++编辑器效果
下载
先确保系统有
命令:
插件配置里加这行:
,其他参数非必需
想接近
效果?加参数:
注意:
不读取项目根目录的
或
,规则得硬写进插件配置
如果文件被识别成
而不是
(右下角语言显示不对),
完全不触发——先按
→
为什么保存后没反应?常见断点排查
格式化没发生,90% 是因为“插件没认出文件类型”或“命令根本没跑起来”,而不是配置写错了。
检查右下角语言标识:必须是
,不是
;是
,不是
。否则插件压根不介入
文件里的
默认不走
,需额外装
并确认 script 块被识别为 JS
插件日志藏在 Sublime 控制台(
):保存后看有没有
或报错路径找不到
ST4 对插件兼容性敏感:某些老版本
在 ST4 下需手动升级到 v5.0+,否则
不触发
最麻烦的其实是路径和上下文——
是绝对路径还是相对路径,取决于你用全局安装还是项目局部 bin,而 Sublime 插件不会帮你猜。
editor.formatOnSaveHTML-CSS-JS PrettifyUnicodeDecodeErrorJsPrettierAutoPEP8Sublime-CodeFormatteron_post_save_asyncJsPrettierprettiernpm install -g prettieryarn global add prettierpnpmprettierprettier_cli_path"./node_modules/.bin/prettier"Preferences → Package Settings → JsPrettier → Settings – User{
"auto_format_on_save": true,
"auto_format_on_save_excludes": ["*/node_modules/*", "*/dist/*"],
"auto_format_on_save_extensions": ["js", "jsx", "ts", "tsx", "json"]
}auto_format_on_save_excludesnode_modules/react/index.jsAutoPEP8blackautopep8pip install autopep8"auto_format_on_save": trueblack"args": ["--in-place", "--aggressive", "--max-line-length=88"]AutoPEP8.pycodestylesetup.cfgPlain TextPythonAutoPEP8Ctrl+Shift+PSet Syntax: PythonJavaScriptVue ComponentPythonPlain Text.vueJsPrettierVue Syntax HighlightCtrl+`JsPrettier: Starting...JsPrettieron_post_save_asyncprettier_cli_path