Ответ 1
В основном то, что вы хотите сделать, это встраивать escape-последовательности ANSI для цвета в ваши строки отладки, как и в обычной рубиновой программе. Существует несколько способов сделать это:
-
Используйте
rainbow
gem, который позволяет вам сделать это:require 'rainbow' Rails.logger.debug(Rainbow("This message is Green").green)
или
require
mixin для добавления методов непосредственно к классу строк:require 'rainbow/ext/string' Rails.logger.debug("This is Green - ".green + "This is Blue".blue)
Драгоценный камень Rainbow автоматически добавит начальную и конечную escape-последовательности в строку.
-
Используйте драгоценный камень
colorize
, который делает то же самое, что и радужный mixin, в класс String:require 'colorize' Rails.logger.debug("This is Green - ".green + "This is Blue".blue)
-
Поместите escape-последовательности в себя, используя что-то вроде этого:
Rails.logger.debug("\033[32mThis message is Green\033[0m")
-
Напишите собственное расширение для класса String. См. этот ответ или этот ответ для примера.
Дополнительные идеи см. в Раскрашенный вывод Ruby