Sublime Text 4 中 Minify 插件因依赖 Python 2 已失效;推荐用 JsPrettier 调用 terser 压缩 JS,用 Build System 配 cleancss 压缩 CSS;终极方案是交由 Webpack/Vite/esbuild 等构建工具处理。

Minify 插件在 Sublime Text 4 里根本不能用了
Sublime Text 4 原生不支持 Python 2,而老版 Minify(比如 GitHub 上 star 最多的那个 sublimetext-minifier)依赖 jsmin 和 cssmin 的旧 Python 2 封装,一装就报 ImportError: No module named jsmin 或直接插件菜单空白。这不是你配置错了,是它压根没适配。
用 JsPrettier + 自定义命令临时压缩 JS
它本身是格式化工具,但能调用 terser(现代、维护活跃)做压缩。前提是你本地已装 Node.js:
- 运行
npm install -g terser - 在 Sublime 中安装
JsPrettier插件(Package Control 可搜到) - 打开
Preferences → Package Settings → JsPrettier → Settings - 在用户设置里加这段:
{ "auto_save": false, "auto_prettify_on_save": false, "node_path": "/usr/local/bin/node", "prettier_cli_path": "/usr/local/bin/terser", "additional_cli_args": { "--compress": true, "--mangle": true, "--output": "$file_dir/$file_base.min.js" } } - 选中 JS 内容 → 右键 →
JsPrettier→ 它会生成.min.js到同目录
注意:terser 不处理 CSS;node_path 和 prettier_cli_path 要按你系统真实路径改,macOS 用 which node 查,Windows 用 where node。
CSS 压缩只能靠外部 CLI 工具手动跑
Sublime 没有靠谱的、持续更新的纯 CSS 压缩插件。别试 css-comb 或 cssbeautify,它们不压缩,只格式化。可行路径只有:
立即学习“前端免费学习笔记(深入)”;
- 装
cleancss:npm install -g clean-css-cli - 终端进项目目录,执行:
cleancss style.css -o style.min.css - 想在 Sublime 里快捷触发?可配一个
Build System:{ "cmd": ["cleancss", "$file", "-o", "$file_path/$file_base.min.css"], "selector": "source.css", "shell": true }保存为CleanCSS.sublime-build,然后Tools → Build System切过去,按Ctrl+B(Win)或Cmd+B(macOS)即可
注意:cleancss 默认不移除所有空格(比如选择器间的换行),加 --format 参数反而会变大,真要极致压缩就别加。
别信“一键压缩整个项目”的插件
搜到的所谓“MinifyAll”或“HTML-CSS-JS Prettify”类插件,多数最后调的还是过时的 yuicompressor 或硬编码 Python 2 路径,在 ST4 下基本都卡在 UnicodeDecodeError 或 AttributeError: 'NoneType' object has no attribute 'group'。它们没法智能识别 @import 顺序、不会处理 url() 中相对路径重写,压缩完 CSS 里图片路径全错是常态。
真正省心的做法:压缩这事早该交给构建流程。Webpack/Vite 的 mode: 'production'、或者 esbuild --minify,比编辑器插件稳得多。Sublime 就安心写代码,别让它干打包的事。

















