module PhusionPassenger::Utils::AnsiColors
def self.included(klass)
def self.included(klass) # When included into another class, make sure that Utils # methods are made private. public_instance_methods(false).each do |method_name| klass.send(:private, method_name) end end
def self.new(type = :auto)
def self.new(type = :auto) return AnsiColorsPrinter.new(type) end
def ansi_colorize(text)
def ansi_colorize(text) text = text.gsub(%r{<b>(.*?)</b>}m, "#{BOLD}\\1#{DEFAULT_TERMINAL_COLOR}") text.gsub!(%r{<dgray>(.*?)</dgray>}m, "#{BOLD}#{DGRAY}\\1#{DEFAULT_TERMINAL_COLOR}") text.gsub!(%r{<red>(.*?)</red>}m, "#{BOLD}#{RED}\\1#{DEFAULT_TERMINAL_COLOR}") text.gsub!(%r{<orange>(.*?)</orange>}m, "#{BOLD}#{ORANGE}\\1#{DEFAULT_TERMINAL_COLOR}") text.gsub!(%r{<green>(.*?)</green>}m, "#{BOLD}#{GREEN}\\1#{DEFAULT_TERMINAL_COLOR}") text.gsub!(%r{<yellow>(.*?)</yellow>}m, "#{BOLD}#{YELLOW}\\1#{DEFAULT_TERMINAL_COLOR}") text.gsub!(%r{<banner>(.*?)</banner>}m, "#{BOLD}#{BLUE_BG}#{YELLOW}\\1#{DEFAULT_TERMINAL_COLOR}") return text end
def strip_color_tags(text)
def strip_color_tags(text) text = text.gsub(%r{<b>(.*?)</b>}m, "\\1") text = text.gsub(%r{<dgray>(.*?)</dgray>}m, "\\1") text.gsub!(%r{<red>(.*?)</red>}m, "\\1") text.gsub!(%r{<orange>(.*?)</orange>}m, "\\1") text.gsub!(%r{<green>(.*?)</green>}m, "\\1") text.gsub!(%r{<yellow>(.*?)</yellow>}m, "\\1") text.gsub!(%r{<banner>(.*?)</banner>}m, "\\1") return text end