【发布时间】:2014-07-16 19:29:17
【问题描述】:
我正在测试一个在终端中输出颜色的 gem:
module Color
def self.colorize(text, color_code)
"#{color_code}#{text}e[0m"
end
def self.red(text)
self.colorize(text, "\033[1;31;12m")
end
end
我在同一目录中有一个测试文件,名为 color_test.rb:
require_relative 'color.rb'
puts Color.red('I should be red')
这会导致以下结果:
$ ruby color_test.rb
I should be red
而且测试实际上是红色的。万岁。但是,rails 控制台中并没有发生同样的情况:
$ rails c
Loading development environment (Rails 4.1.1)
2.0.0-p247 :001 > require 'color'
=> true
2.0.0-p247 :003 > Chroma.colourise('text',"\033[1;31;12m")
=> "\e[1;31;12mtexte[0m"
那么我该如何逃脱呢? (如果这甚至是术语:P)我也希望能够在控制台中显示粗体文本和其他样式。
这只是为了测试,所以我可以为 rails 控制台下载某种扩展,但是如果有办法将此功能打包到 gem 中并赋予控制台颜色,那将非常酷,所以如果有人可以告诉我我会多么高兴。
【问题讨论】:
标签: ruby-on-rails ruby rails-console