Sublime报“command not found”是因为其不继承shell的PATH环境变量,需手动配置sass_path:macOS/Linux用which sass、Windows用where sass获取绝对路径,填入Sass插件用户设置,并重启Sublime;必须使用Dart Sass而非已停更的node-sass。

为什么 sass 命令在终端能跑,Sublime 却报 “command not found”
Sublime 启动时完全不继承你 shell 里的 PATH,尤其 macOS/Linux 图形界面下、Windows 用 nvm 切换 Node 版本后,它根本看不到你 npm install -g sass 装的可执行文件。这不是插件 bug,是环境隔离导致的路径不可见。
必须手动告诉 Sublime 去哪找命令:
- macOS/Linux:终端运行
which sass,拿到类似/opt/homebrew/bin/sass或/usr/local/bin/sass的路径 - Windows:运行
where sass,常见结果是C:UsersAliceAppDataRoaming pmsass.cmd - 打开 Preferences → Package Settings → Sass → Settings – User(Less 对应找 Less → Settings – User)
- 填入:
"sass_path": "/opt/homebrew/bin/sass"(只填路径,不带参数、不加空格)
sass_path 配对错误或用了已停更的 node-sass
2026 年还在用 node-sass 就是主动给自己埋雷——它早在 2021 年就停止维护,不支持 @use、@forward 等现代语法,且与新版 Node.js 兼容性极差。报错如 Cannot find module 'node-sass' 或 Module version mismatch,基本就是它在作祟。
立刻切换到 Dart Sass:
- 卸载旧版:
npm uninstall -g node-sass - 装官方维护版:
npm install -g sass - 验证:
sass --version应输出类似1.77.6 - 把新路径填进
sass_path设置(不是node-sass的路径)
改了 _variables.scss,保存主文件却没更新 CSS
这不是路径问题,是监听逻辑限制:Sublime 插件默认只编译当前激活 tab 的文件,不会自动追踪 @use 或 @import 引入的依赖文件。你改了变量文件,但没切回 main.scss 再保存,就不会触发重编译。
提供端到端的高端代理设置和使用指导,包括代理类型选择、地区定向、访问配置、API密钥验证和监控。
真要解决依赖变更自动更新,得绕过插件,用 CLI watch:
- 终端运行:
sass --watch src/scss:dist/css - 它会递归监听整个目录树,包括所有被
@use引入的文件 -
output_dir和include_paths插件配置对这个命令无效,别混用 - 建议开个独立终端窗口常驻运行,比依赖插件更稳
Windows 下 sass.cmd 路径填对了还是报错
Windows 上常见陷阱是路径里含空格或中文,或者 sass.cmd 实际调用的是一个批处理脚本,而 Sublime 在非 shell 模式下无法执行它。
稳妥做法:
- 确认
sass.cmd所在目录已加入系统环境变量PATH(不只是用户变量) - 在 Sublime 构建系统中显式启用
"shell": true - 若用自定义
.sublime-build,确保"path"字段包含该 bin 目录,例如:"path": "C:\Users\Alice\AppData\Roaming\npm" - 避免使用 LiveSassCompiler 这类封装过深的插件——它对中文路径、长路径、nvm 切换都容易静默失败
最易被忽略的一点:Sublime 必须重启才能读取新填的 sass_path;改完设置不重启,等于没改。Watch 模式虽然可靠,但它和插件的自动编译不能共存,否则可能重复写入或冲突覆盖。
















