Minify插件在Sublime Text 3/4上基本不可用,推荐使用HTML-CSS-JS Prettify(需启用compress配置)、自建Build System调用terser/clean-css-cli,或选用ST4原生兼容的JsCompress/CSSCompressor插件。

别装 Minify 插件了,它在 Sublime Text 3/4 上基本不可用,装了也大概率报错或静默失败。真正稳定、可配置、支持现代语法的方案是组合使用 HTML-CSS-JS Prettify(压缩)或自建 Build System 调用 terser/clean-css-cli。
HTML-CSS-JS Prettify 压缩不生效?检查 compress 配置
这个插件名字带“Prettify”,但默认只格式化,不压缩。不改设置就右键选“Prettify Code”,出来的还是带空格和换行的代码。
- 必须显式启用压缩:选中代码 → 右键 →
HTML/CSS/JS Prettify→Prettify Code (Minify) - 或快捷键:
Ctrl+Shift+H(Win/Linux)/Cmd+Shift+H(Mac),再按m - 想全局默认压缩?打开
Preferences → Package Settings → HTML-CSS-JS Prettify → Settings,加这两行:
{
"css": {"compress": true},
"js": {"compress": true}
}
注意:压缩是单向操作,/*! license */ 注释默认保留;如需删除,得额外配 "remove_comments": true。
Build System 调用 terser 压缩 JS:绝对路径是硬性要求
Sublime 的构建环境不继承 shell 的 PATH,写 "cmd": ["terser", ...] 必然报 command not found。
立即学习“前端免费学习笔记(深入)”;
DMap GL地图JSAPI(dmapgl)开发指南。用于编写、审查、调试 DMap 地图 API 代码,涵盖地图初始化、覆盖物渲染、图层管理、事件处理、控件交互等任务。当用户提及 dmap、dmapgl、jsapi‑gl 或相关地图开发需求时自动触发。
- 先在终端运行
which terser,拿到真实路径,比如/usr/local/bin/terser或/Users/xxx/.nvm/versions/node/v20.15.0/bin/terser - 新建 Build System(
Tools → Build System → New Build System),填入:
{
"cmd": ["/usr/local/bin/terser", "$file", "-o", "${file_path}/${file_base_name}.min.js", "--compress", "--mangle"],
"selector": "source.js",
"shell": true
}
-
"shell": true必须设为true,否则$file等变量不展开 - 漏掉
--mangle就不会混淆变量名;拼错成--mangel也不会报错,只会静默忽略 - ES6+ 语法(如
async、??)需要terser≥ v5,老版本uglify-js即使加--harmony也容易崩
CSS 压缩用 clean-css-cli:别碰已归档的 Minify
原版 Minify 插件依赖过时的 clean-css@3.x 和 Python 2 模块,在 ST4 上会直接触发 ImportError: No module named 'sublime_plugin'。
- 推荐用独立 CLI 工具:安装
npm install -g clean-css-cli - 同样要查绝对路径:
which cleancss(注意命令名是cleancss,不是clean-css) - 建一个 CSS 压缩 Build System:
{
"cmd": ["/usr/local/bin/cleancss", "$file", "-o", "${file_path}/${file_base_name}.min.css"],
"selector": "source.css",
"shell": true
}
如果 CSS 里有 @import 或本地字体声明,cleancss 默认不处理外部资源——这不是 bug,是设计如此。真要内联,得加 --skip-import 或换用 postcss 流程。
JsCompress / CSSCompressor:ST4 原生兼容的轻量选择
如果你不想配路径、不依赖 Node CLI,这两个插件是目前最省心的替代:
- 通过 Package Control 安装
JsCompress和CSSCompressor,它们专为 ST4 的 Python 3.8 API 重构过 - 右键菜单直接出现
JsCompress: Compress JavaScript和CSSCompressor: Compress CSS - 默认保留
/*! license */注释;如需删掉,在插件 Settings 里加"remove_comments": true - 不调用外部命令,无路径问题,也不吃 Node 版本差异的亏
压缩本身没技术门槛,难的是路径、版本、API 兼容这三关。哪个方案最稳?看你的环境:有 Node 且愿意管路径,用 terser+Build System;想开箱即用,选 JsCompress;要同时压 HTML/CSS/JS 且接受配置成本,HTML-CSS-JS Prettify 是目前唯一活跃维护的全能型选手。

















