Codeception bash颜色输出不显示

时间:2015-03-06 09:19:09

标签: bash powershell cmd cygwin git-bash

我已经使用Codeception和PhantomJS测试了一段时间,但是当我需要调试并运行时

    vendor/bin/codecept run --debug

将颜色设置为true我得到的是:

    Modules: ←[33mWebDriver, AcceptanceHelper←[39m

等等......所以由于某种原因,颜色只是以原始格式输出而根本不起作用。颜色通常有效。就像我使用" ls --color"它只是工作。 我的系统是Windows 7我正在使用" git bash"我也尝试了常规" cmd" "的powershell"和" cygqwin"。他们中的任何一个似乎都没有使用codeceoptions输出。 那么问题是什么?我一无所知:(

2 个答案:

答案 0 :(得分:3)

在bash中,尝试运行

export TERM=ansi 

export TERM=xterm

在运行程序之前

或者,测试shell本身的颜色输出:

echo -e "\e[41m\e[32mCOLOR\e[0m"

如果它确实比它是程序,而不是环境

最后,你可能只需要一个更好的控制台。 尝试conemu,它具有出色的ansi颜色支持,我使用它为cmd powershell bash perl和ssh会话:) http://sourceforge.net/projects/conemu/

答案 1 :(得分:1)

您的应用程序(Codeception)未适用于Windows控制台,后者不支持ANSI着色。要启用ANSI颜色,您可以选择以下选项之一:

  • ConEmu是具有ANSI capabilities的Windows本地终端以及许多其他功能,如标签,拆分,预配置的shell任务,......此外,它是唯一能够"replace" default Windows console的终端。是的,我是作者。
  • 某些应用程序可以在mintty中正常工作(与cygwin或msys捆绑在一起)。许多本机Windows控制台工具无法在此终端中正常工作,但可能是您的应用程序没问题。
  • 有AnsiCon项目。它在标准Windows控制台中启用ANSI着色。
BTW,bash的ls(cygwin或msys)适用于Windows控制台API,因此它不会将ANSI发布到终端,除非终端已完成POSIX子系统的特殊初始化。 ConEmu可以通过cygwin/msys connector进行初始化。