Sha256: 5aca6b67dfa91b2a8c54de2478d3e5b408afe2f5b7d348fac285a5ef383448e0
Contents?: true
Size: 867 Bytes
Versions: 5
Compression:
Stored size: 867 Bytes
Contents
require 'colorize' module ProjectReleaser module Logger class ColoredConsole COLORS = { :light_blue => "'", :green => '`', :yellow => '"' } def info(msg) puts colorize(msg) end def error(msg) info "\"Error\": #{msg}" end private def colorize(msg) msg = color_all_words(msg, :light_white) COLORS.each do |color, char| msg = color_char(msg, char, color) end msg end def color_all_words(msg, color) msg.split.map { |w| w.colorize(color) }.join(' ') end def color_char(msg, char, color) color_regexp = Regexp.new "#{char}.*?#{char}" cleanup_regexp = Regexp.new "#{char}" msg.gsub(color_regexp) {|m| m.gsub(cleanup_regexp, '').colorize color} end end end end
Version data entries
5 entries across 5 versions & 1 rubygems