僕のYak Shavingは終わらない

車輪の再発明をやめたらそこには壮大なYakの群れが

git風のdiffを作成する

http://search.cpan.org/~rkrimen/Diff-LibXDiff-0.05/lib/Diff/LibXDiff.pm
これが良かったよって話

以下のように使った。とりあえずで色もつけてみた。

use Diff::LibXDiff;

my $diff = Diff::LibXDiff->diff( $old, $new );

# add color like a git
$diff =~ s/^(-.*?)(?:\r)?$/<span style="color:#f00;">$1<\/span>\r/mg;
$diff =~ s/^(\+.*?)(?:\r)?$/<span style="color:#099;">$1<\/span>\r/mg;

# delete "\ No newline at end of file"
$diff =~ s/\\ No newline at end of file\n//g;

例えばこんな感じ。
f:id:kazuph1986:20121124113457j:plain

良い感じ。