sublime text 不自带 sass 编译功能,必须安装 dart sass 并正确配置路径;推荐使用 sass 语法插件 + sublimeonsavebuild + 自定义 .sublime-build 文件,显式指定 sass 路径以绕过环境变量问题。

Sublime Text 本身不编译 Sass,所谓“安装插件”只是加语法高亮或调用外部 sass 命令的入口;90% 的失败源于没装 Dart Sass 或 Sublime 找不到它。
确认系统已装 Dart Sass,且终端能调用
这是所有后续步骤的前提。插件不会替你装 sass,只负责调用——没装或路径不对,保存就静默失败。
- 在终端执行
sass --version,输出必须是类似1.77.6的数字(Dart Sass),不是3.4.22(Ruby Sass,已废弃)或报错 - macOS/Linux 运行
which sass,拿到真实路径,如/opt/homebrew/bin/sass - Windows 运行
where sass,常见路径是C:\Users\Alice\AppData\Roaming\npm\sass.cmd - 别用
node-sass:它已停更,不支持@use/@forward,sass --version会直接报错
别装 Sass Build 或 SassBuilder 插件
这两个插件都基于已废弃的 Ruby Sass,GitHub 最后一次提交分别是 2016 和 2018 年,作者明确标记为 deprecated。强行启用会导致:
- 改了
_mixins.scss后保存main.scss,CSS 不更新(不识别@use依赖) - 右下角显示 “Watch Sass” 但实际无监听,或卡死、假死
- 构建时提示
command not found: sass,即使终端里sass --version正常
推荐方案:Sass 插件 + SublimeOnSaveBuild + 自定义 .sublime-build
这是目前最稳、报错可见、支持现代 Sass 特性的组合。重点是显式指定 sass 路径,绕过 PATH 继承问题。
- 用 Package Control 安装
Sass(语法高亮)和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到Packages/User/目录 - 打开一个
.scss文件,右下角状态栏必须显示SCSS(否则构建不触发) - 重启 Sublime(从 Dock / 开始菜单启动,不是命令行启动)
想监听子文件变更?别指望 Sublime 插件
所有 Sublime 插件(包括 LiveSassCompiler、SublimeOnSaveBuild)都只监听当前激活 tab。改了 _variables.scss,但没切回 main.scss 保存,CSS 就不会重编译。
- 真要监听整个目录结构,必须在终端单独运行:
sass --watch src/scss:dist/css - 可同时开着 Sublime 编辑 + 终端
--watch,互不干扰:前者管即时修改,后者管完整依赖链 - 如果需要浏览器自动刷新,搭配 LiveReload 插件 + 浏览器扩展,而不是依赖插件“自动编译”功能
最容易被忽略的是:Sublime 启动方式决定它能否读到你的 PATH。从终端用 subl 启动,和从 Dock 点开,环境变量完全不同。哪怕 sass --version 在终端里跑得飞快,也得重启 Sublime 并确保它是图形界面启动的,否则配置的 sass_path 或 .sublime-build 都可能不生效。











