我正在编写一个将在CLI中运行的小型Ruby脚本。
为了改善界面,我需要为我输出的一些元素添加颜色/粗体。
可行吗?如果是这样,我几乎可以肯定这是怎么回事?
答案 0 :(得分:11)
在许多终端(但不是Windows)上,您可以使用如下序列:"\e[#{code}m"
,其中代码基于these tables。如果使用多个代码,则代码必须用分号分隔。主要代码是:
1 Bold Intensity
4 Underline
5 Slow blink
6 Fast blink
22 Normal Intensity
Foreground 3X
Background 4X
Where X is:
-----------
0 Black
1 Red
2 Green
3 Yellow
4 Blue
5 Magenta
6 Cyan
7 White
因此,例如,对于蓝色背景上缓慢闪烁的粗体绿色文字,您将使用"\e[5;1;32;44mWOW!\e[0m"
。 \e[0m
将所有内容重置为终端默认值。
答案 1 :(得分:8)
有一个名为rainbow
的宝石,可以很容易地为终端输出设置样式。
sudo gem install rainbow
安装后,您可以执行以下操作:
puts 'some text'.underline