module PhusionPassenger::Utils::AnsiColors

Constants

BLACK_BG
BLUE_BG
BOLD
DEFAULT_TERMINAL_COLOR
DGRAY
GREEN
ORANGE
RED
RESET
WHITE
YELLOW

Public Class Methods

included(klass) click to toggle source
# File lib/phusion_passenger/utils/ansi_colors.rb, line 42
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

Public Instance Methods

ansi_colorize(text) click to toggle source
# File lib/phusion_passenger/utils/ansi_colors.rb, line 50
def ansi_colorize(text)
        text = text.gsub(%r{<b>(.*?)</b>}, "#{BOLD}\\1#{DEFAULT_TERMINAL_COLOR}")
        text.gsub!(%r{<dgray>(.*?)</dgray>}, "#{BOLD}#{DGRAY}\\1#{DEFAULT_TERMINAL_COLOR}")
        text.gsub!(%r{<red>(.*?)</red>}, "#{BOLD}#{RED}\\1#{DEFAULT_TERMINAL_COLOR}")
        text.gsub!(%r{<orange>(.*?)</orange>}, "#{BOLD}#{ORANGE}\\1#{DEFAULT_TERMINAL_COLOR}")
        text.gsub!(%r{<green>(.*?)</green>}, "#{BOLD}#{GREEN}\\1#{DEFAULT_TERMINAL_COLOR}")
        text.gsub!(%r{<yellow>(.*?)</yellow>}, "#{BOLD}#{YELLOW}\\1#{DEFAULT_TERMINAL_COLOR}")
        text.gsub!(%r{<banner>(.*?)</banner>}, "#{BOLD}#{BLUE_BG}#{YELLOW}\\1#{DEFAULT_TERMINAL_COLOR}")
        return text
end
strip_color_tags(text) click to toggle source
# File lib/phusion_passenger/utils/ansi_colors.rb, line 61
def strip_color_tags(text)
        text = text.gsub(%r{<b>(.*?)</b>}, "\\1")
        text = text.gsub(%r{<dgray>(.*?)</dgray>}, "\\1")
        text.gsub!(%r{<red>(.*?)</red>}, "\\1")
        text.gsub!(%r{<orange>(.*?)</orange>}, "\\1")
        text.gsub!(%r{<green>(.*?)</green>}, "\\1")
        text.gsub!(%r{<yellow>(.*?)</yellow>}, "\\1")
        text.gsub!(%r{<banner>(.*?)</banner>}, "\\1")
        return text
end