sub colorize { # Autoload here eval {require Term::ANSIColor}; if ($@ =~ /locate Term::ANSIColor/) { print "Cannot locate Term::ANSIColor.\n", "Color support disabled\n"; return; } elsif ($@) { die $@; } my $color = shift; my $escape_code = eval {color($color)}; if ($@) { print "Invalid color '$color'\n"; return color('reset'); } else { return $escape_code; } }