在composer上运行脚本时保持颜色输出

时间:2014-11-19 18:31:19

标签: php composer-php bdd

Composer允许运行脚本,如defining scripts中所述。

所以,我试图用它运行一些规范测试。

{
    "scripts": {
        "test": "./vendor/davedevelopment/dspec/bin/dspec"
    },
    "require-dev": {
        "esperance/esperance": "dev-master",
        "davedevelopment/dspec": "dev-master"
    }
}

它运行良好,但没有颜色输出,对于规范测试,这很难阅读。

如何运行脚本但保留原始彩色输出?

3 个答案:

答案 0 :(得分:23)

使用--ansi参数。

"test": "./vendor/davedevelopment/dspec/bin/dspec --ansi"

答案 1 :(得分:3)

davedevelopment / dspec库使用symfony / console组件。 Symfony / console使用 POSIX扩展来确定是否允许颜色输出。如果您希望默认显示颜色而不传递--ansi标志,则只需安装POSIX扩展名。

答案 2 :(得分:1)

我只是通过作曲家运行phpunit,颜色就在那里。也许dspec脚本没有颜色支持或默认情况下被禁用。

"scripts" : {
  "test" : "./vendor/bin/phpunit -c tests/phpunit.xml"
},