$_.gsub!(/^[-+@]/) {|m| "\x1b[1;%sm#{m}" % {"-" => 31, "+" => 34, "@" => 35 }[m] }
こんな感じ。
svn diff -c147 svn+ssh://winebarrel@rubyforge.org/var/svn/zipruby/ | ruby -p -e '$_.gsub!(/^[-+@]/) {|m| "\x1b[1;%sm#{m}" % {"-" => 31, "+" => 34, "@" => 35 }[m] }' | lv
![f:id:winebarrel:20080723103554j:image f:id:winebarrel:20080723103554j:image](http://cdn-ak.f.st-hatena.com/images/fotolife/w/winebarrel/20080723/20080723103554.jpg)