1
0
Fork 0
mirror of https://github.com/awesome-print/awesome_print synced 2023-03-27 23:22:34 -04:00

Minor simplification

This commit is contained in:
Mike Dvorkin 2011-11-23 21:27:47 -08:00
parent 3849b4a7bd
commit 59b7099293
3 changed files with 6 additions and 8 deletions

View file

@ -6,7 +6,7 @@
class String
#
# ANSI color codes:
# \033 => escape
# \e => escape
# 30 => color base
# 1 => bright
# 0 => normal
@ -17,11 +17,11 @@ class String
%w(gray red green yellow blue purple cyan white).zip(
%w(black darkred darkgreen brown navy darkmagenta darkcyan slategray)).each_with_index do |(color, shade), i|
define_method color do |*html|
html[0] ? %Q|<kbd style="color:#{color}">#{self}</kbd>| : "\033[1;#{30+i}m#{self}\033[0m"
html[0] ? %Q|<kbd style="color:#{color}">#{self}</kbd>| : "\e[1;#{30+i}m#{self}\e[0m"
end
define_method "#{color}ish" do |*html|
html[0] ? %Q|<kbd style="color:#{shade}">#{self}</kbd>| : "\033[0;#{30+i}m#{self}\033[0m"
html[0] ? %Q|<kbd style="color:#{shade}">#{self}</kbd>| : "\e[0;#{30+i}m#{self}\e[0m"
end
end

View file

@ -154,9 +154,7 @@ module AwesomePrint
# Format a Struct. If @options[:indent] if negative left align hash keys.
#------------------------------------------------------------------------------
def awesome_struct(s)
h = {}
s.each_pair { |k,v| h[k] = v }
awesome_hash(h)
awesome_hash(Hash[s.members.zip(s.values)])
end
# Format Class object.

View file

@ -3,11 +3,11 @@ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
describe "String extensions" do
[ :gray, :red, :green, :yellow, :blue, :purple, :cyan, :white ].each_with_index do |color, i|
it "should have #{color} color" do
color.to_s.send(color).should == "\033[1;#{30+i}m#{color}\033[0m"
color.to_s.send(color).should == "\e[1;#{30+i}m#{color}\e[0m"
end
it "should have #{color}ish color" do
color.to_s.send(:"#{color}ish").should == "\033[0;#{30+i}m#{color}\033[0m"
color.to_s.send(:"#{color}ish").should == "\e[0;#{30+i}m#{color}\e[0m"
end
end