5

在 Windows 上以 sublime text 2 运行 grunt 时,似乎认为它只显示第一行输出。奇怪的是,所有任务都完成了。添加"shell": trueorfalse似乎没有任何效果。添加cmd /c甚至start /wait /b.

如何阻止 sublime text 吃掉其余的输出?

// grunt.sublime-build
{
    "cmd": ["grunt.cmd", "--no-color", "--verbose"],
    "working_dir": "${project_path:${folder}}",
    "selector": ["source.js", "source.less", "source.json", "source.ts"],
    "shell": true
}

我得到的唯一输出是:

Initializing
[Finished in 1.6s]

更新 这似乎与 Sublime Text 2 issue 23: Windows Build Panel Eats Stdout有关。

更新 有一个解决方法,但它很难看。

// grunt.sublime-build
{
    "cmd": ["grunt.cmd", "--no-color", ">", "c:\\temp\\st2.txt", "&&", "type", "c:\\temp\\st2.txt"],
    "working_dir": "${project_path:${folder}}",
    "selector": ["source.js", "source.less", "source.json", "source.ts"]
}
4

2 回答 2

0

我在使用 Sublime Text 时遇到了同样的问题,但是为我从事的每个项目创建一个新的构建命令感觉很尴尬。所以当我找到并安装插件Grunt时我很高兴。

它不适用于我一开始工作的所有不同平台。所以在我知道之前,我是那个项目的贡献者之一。它基本上为您提供了命令中的所有Gruntfile命令CTRL + SHIFT + P - Grunt,所有繁琐的任务都在您的指尖。我们在最新版本中失去了基于咖啡脚本的Gruntfile支持,但我确信它很快就会恢复。

这是一个已注册的插件,因此您可以使用Package Control安装它。

于 2013-12-20T11:37:42.127 回答
0

我整理了一个稍微简单的构建脚本,它将在当前目录中写入和删除临时文件:

{
    "cmd": ["grunt --no-color > grunt.status & type grunt.status && del grunt.status"],
    "working_dir": "${project_path}/assets/js/src",
    "shell": true
}

来源:https ://gist.github.com/3951895

于 2012-10-25T11:52:32.560 回答