在OS X 10.7.2上,我在Sublime Text 2中创建了一个小型构建系统,它将我的LESS文件编译成CSS,但它似乎有问题。
{
"cmd": ["/usr/local/lib/node_modules/less/bin/lessc", "-x", "$file", "$file_path/$file_base_name.css"],
"selector": ["source.less"]
}
我使用标准的OS X安装程序包安装了Node.js v0.6.6,并使用npm在/usr/local/lib/node_modules
文件夹中安装了较少的v1.1.6。切换到我的构建系统工作正常,但当我尝试运行构建时,我收到以下错误消息:
[Finished]env: node: No such file or directory
从终端运行命令工作得很好,只是Sublime正在解决问题。
答案 0 :(得分:4)
解决此问题的另一种方法是全局安装LESS,因为它看起来像你已经完成的那样:
npm install -g less
然后将shell = true作为构建脚本中的变量传递:
{
"shell" : true,
"cmd": ["lessc", "-x", "$file", "$file_path/$file_base_name.css"],
"selector": "source.css.less"
}
以您期望的方式在终端中运行 lessc 命令。
答案 1 :(得分:2)
虽然我仍然不确定为什么Sublime Text 2和终端中运行构建系统之间存在差异,但我通过将$PATH
的值显式添加到我的构建系统来修复了我遇到的问题
根据Sublime Text Help页面上提供的文档,我将构建系统设置为以下内容:
{
"cmd": ["/usr/local/lib/node_modules/less/bin/lessc", "-x", "$file", "$file_path/$file_base_name.css"],
"selector": "source.css.less",
"path": "/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin: No such file or directory"
}