我正在测试在终端输出颜色的宝石:
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中并为控制台提供颜色,那将非常酷,因此如果有人可以显示我,我将多么高兴。
尝试这个:
text = 'red text'
puts "\033[31m#{text}\033[0m"
另一种选择是扩展String类
class String
def red
"\033[31m#{self}\033[0m"
end
def green
"\033[32m#{self}\033[0m"
end
end
比你可以做的事情 'spinach'.green
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句