【发布时间】:2011-07-28 11:08:22
【问题描述】:
我试图让 watchr 在文件更改时自动运行测试,并且得到了我需要的大部分工作,除了来自 RSpec 的所有 ANSI 颜色都被忽略的事实。违规代码如下:
stdin, stdout, stderr = Open3.popen3(cmd)
stdout.each_line do |line|
last_output = line
puts line
end
当 cmd 等于 rspec spec/**/*.rb 之类的东西时,上面的代码可以正常运行 RSpec,除了所有输出都是单色的。我已经研究过使用Kernel.system,但是系统没有返回我需要确定测试是否失败/成功的输出。如何从 Ruby 中执行的脚本中获取输出,包括 ANSI 颜色并将其输出到控制台?
【问题讨论】:
标签: ruby colors ansi-escape