如何从ruby中的反引号命令中获取颜色?
在ruby文件中:
当我做system("rspec file_spec.rb")
我得到一个很好的彩色输出 。
我这样做的时候:
result = `rspec file_spec.rb` puts result
我根本没有颜色。
有没有办法保留颜色 ?
顺便说一句,如果重要的话,我在OSX上使用Terminal.app。
从读取代码看起来,RSpec在输出流上调用IO#isatty来决定是否对输出着色。 在这方面,反引用方法必须与system
不同。
编辑
如果您向rspec命令添加选项--tty
,则此方法有效:
`rspec –color –tty file_spec.rb`
正如这个SO问题所提到的那样。