sublime text 不支持原生 sass 文件监听,必须依赖终端 sass --watch 或 sublimeonsavebuild + dart sass;sass build 插件已弃用多年,不兼容现代 sass 特性且无法正常工作。

Sublime Text 本身不监听 Sass 文件变更,所谓“自动监测编译”必须靠终端 sass --watch 实现;SassBuilder(即老版 Sass Build 插件)已弃用多年,强行启用会漏编译、卡死、不响应 @use 依赖——别走这条路。
别装 Sass Build,它早就不维护了
Sass Build 插件基于已停更的 Ruby Sass,2018 年后彻底失效。你装了也看不到右下角“Watch Sass”,Ctrl+B 选它只会报错 command not found: sass 或静默失败。它不支持 Dart Sass 的 @use、@forward,也不识别 _variables.scss 被修改后的重编译。
- 查插件仓库:GitHub 上 last commit 是 2016 年,作者标记为
deprecated - 装了也白装:即使凑合跑起来,改
_mixins.scss后保存main.scss,CSS 也不会更新 - 替代方案明确:用
SublimeOnSaveBuild+ 全局 Dart Sass,或直接终端sass --watch
真正能用的:SublimeOnSaveBuild + Dart Sass
这是目前最稳的“保存即编译”方案,报错可见、路径可控、支持所有现代 Sass 特性。前提是系统里真有 sass 命令,且 Sublime 能找到它。
- 先确认终端能跑:
sass --version输出版本号(如1.77.6),不是command not found - macOS/Linux:运行
which sass,拿到路径如/opt/homebrew/bin/sass;Windows 运行where sass,常见路径是C:\Users\Me\AppData\Roaming\npm\sass.cmd - 重启 Sublime(从 Dock/开始菜单启动,不是命令行启动,否则 PATH 不生效)
- 安装插件:
Ctrl+Shift+P→Package Control: Install Package→ 输入SublimeOnSaveBuild - 新建构建系统:
Tools → Build System → New Build System,贴入:
{
"cmd": ["sass", "--no-source-map", "$file", "${file_path}/${file_base_name}.css"],
"selector": "source.scss, source.sass",
"file_regex": "^(.*?):([0-9]+):([0-9]+) (.*)$"
}
保存为 SCSS.sublime-build。右下角状态栏必须显示 SCSS,否则构建不触发。
想监听子文件变更?终端 sass --watch 是唯一解
所有插件(包括 LiveSassCompiler)只监听当前打开的 .scss 标签页。改了 _colors.scss,但没切回去保存 main.scss,CSS 就不会变——这不是 bug,是设计限制。
- 进项目根目录,执行:
sass --watch src/scss:dist/css(递归监听整个目录) - 只编译单入口:
sass --watch src/scss/main.scss:dist/css/main.css - 加压缩:
--style=compressed;加 sourcemap:--source-map - 别把
--watch塞进 Sublime 构建系统——它会阻塞 UI,保存后卡住几秒
浏览器自动刷新得自己搭链路
编译出 CSS 不等于页面更新。Sublime 不通知浏览器,你得手动接上。
- 装
LiveReload插件(Package Control 安装) - 浏览器装对应扩展(Chrome/Firefox 官方 LiveReload)
- 在 HTML 开发页底部加 script:
<script>document.write('<script src="http://' + location.hostname + ':35729/livereload.js?snipver=1"></script>') - 终端跑起
sass --watch后,在 Sublime 里Ctrl+Shift+P→LiveReload: Enable/Disable
真正容易被忽略的是:Sublime 启动时 PATH 为空,哪怕你在终端里 npm install -g sass 成功,它也找不到命令——必须用绝对路径,且必须重启编辑器。没这步,后面全白配。











