more color support for UI
This commit is contained in:
parent
e4514ab298
commit
3464d59cb7
@ -1,5 +1,24 @@
|
|||||||
module Guard
|
module Guard
|
||||||
module UI
|
module UI
|
||||||
|
|
||||||
|
ANSI_ESCAPE_BLACK = "30"
|
||||||
|
ANSI_ESCAPE_RED = "31"
|
||||||
|
ANSI_ESCAPE_GREEN = "32"
|
||||||
|
ANSI_ESCAPE_YELLOW = "33"
|
||||||
|
ANSI_ESCAPE_BLUE = "34"
|
||||||
|
ANSI_ESCAPE_MAGENTA = "35"
|
||||||
|
ANSI_ESCAPE_CYAN = "36"
|
||||||
|
ANSI_ESCAPE_WHITE = "37"
|
||||||
|
|
||||||
|
ANSI_ESCAPE_BGBLACK = "40"
|
||||||
|
ANSI_ESCAPE_BGRED = "41"
|
||||||
|
ANSI_ESCAPE_BGGREEN = "42"
|
||||||
|
ANSI_ESCAPE_BGYELLOW = "43"
|
||||||
|
ANSI_ESCAPE_BGBLUE = "44"
|
||||||
|
ANSI_ESCAPE_BGMAGENTA = "45"
|
||||||
|
ANSI_ESCAPE_BGCYAN = "46"
|
||||||
|
ANSI_ESCAPE_BGWHITE = "47"
|
||||||
|
|
||||||
class << self
|
class << self
|
||||||
|
|
||||||
color_enabled = nil
|
color_enabled = nil
|
||||||
@ -7,14 +26,14 @@ module Guard
|
|||||||
def info(message, options = {})
|
def info(message, options = {})
|
||||||
unless ENV["GUARD_ENV"] == "test"
|
unless ENV["GUARD_ENV"] == "test"
|
||||||
reset_line if options[:reset]
|
reset_line if options[:reset]
|
||||||
puts reset_color(message) if message != ''
|
puts color(message) if message != ''
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
def error(message, options = {})
|
def error(message, options = {})
|
||||||
unless ENV["GUARD_ENV"] == "test"
|
unless ENV["GUARD_ENV"] == "test"
|
||||||
reset_line if options[:reset]
|
reset_line if options[:reset]
|
||||||
puts "#{color('ERROR:', ';31')} #{message}"
|
puts color('ERROR:', :red) + message
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -35,11 +54,22 @@ module Guard
|
|||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
|
# @deprecated
|
||||||
def reset_color(text)
|
def reset_color(text)
|
||||||
color(text, "")
|
color(text, "")
|
||||||
end
|
end
|
||||||
|
|
||||||
def color(text, color_code)
|
def color(text, *color_options)
|
||||||
|
color_code = ""
|
||||||
|
color_options.each do |color_option|
|
||||||
|
color_option = color_option.to_s
|
||||||
|
if color_option != ""
|
||||||
|
if !(color_option =~ /\d+/)
|
||||||
|
color_option = const_get("ANSI_ESCAPE_#{color_option.upcase}")
|
||||||
|
end
|
||||||
|
color_code += ";" + color_option
|
||||||
|
end
|
||||||
|
end
|
||||||
color_enabled? ? "\e[0#{color_code}m#{text}\e[0m" : text
|
color_enabled? ? "\e[0#{color_code}m#{text}\e[0m" : text
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user