1

在 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 将较少的 v1.1.6 安装到/usr/local/lib/node_modules文件夹中。切换到我的构建系统工作正常,但是当我尝试运行构建时,我收到以下错误消息:

[Finished]env: node: No such file or directory

从终端运行命令工作得很好,只是 Sublime 出了问题。

4

2 回答 2

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命令。

于 2012-05-02T14:46:43.383 回答
2

虽然我仍然不确定为什么 Sublime Text 2 和在终端中运行构建系统之间存在差异,但我通过显式将值添加$PATH到我的构建系统来解决了我遇到的问题。

根据Sublime Text 帮助页面上提供的文档,我将构建系统设置为以下内容:

{
    "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"
}
于 2012-01-01T14:11:32.700 回答