module Gemdiff::Colorize

Constants

COLORS

Public Instance Methods

colorize(string, color) click to toggle source
# File lib/gemdiff/colorize.rb, line 36
def colorize(string, color)
  "\e[#{to_color_code(color)}m#{string}\e[0m"
end
colorize_git_output(lines) click to toggle source

works with `git show` and `git diff`

# File lib/gemdiff/colorize.rb, line 15
def colorize_git_output(lines)
  out = []
  lines.split("\n").each do |line|
    out <<
      if line.start_with?("---", "+++", "diff", "index")
        colorize line, :blue
      elsif line.start_with?("@@")
        colorize line, :magenta
      elsif line.start_with?("commit")
        colorize line, :yellow
      elsif line.start_with?("-")
        colorize line, :red
      elsif line.start_with?("+")
        colorize line, :green
      else
        line
      end
  end
  out.join("\n")
end

Private Instance Methods

to_color_code(color) click to toggle source
# File lib/gemdiff/colorize.rb, line 42
def to_color_code(color)
  COLORS[color] || 30
end