Category: | Fun Stuff |
Author/Contact Info | jacques |
Description: | This small program rates a file's adherence to perltidy guidelines. You can easily modify it to meet your requirements. It was developed on a win32 platform with the standalone perltidy script. |
#!perl.exe
#
# Perl-Messy -a program that rates files adherence to perltidy guidli
+nes
#
die "usage: 'perlmessy file1 file2 file3 ...' or 'perlmessy *.pl'\n"
unless $ARGV[0];
foreach (@ARGV) {
@files = glob("$_");
foreach (@files) {
die "File $_ doesn't exist\n" unless (-e $_);
system("perl perltidy $_") == 0
or die "pertidy produced an error";
@lines = `diff -w $_ $_.tdy`;
unlink("$_.tdy") or warn "File $_.tdy could not be deleted\n";
$count = 0;
foreach (@lines) {
/^>|^</ and $count++;
}
if ( $count <= 4 ) {
$message = "Larry Wall would be proud";
}
elsif ( $count <= 7 ) {
$message = "Not too untidy";
}
elsif ( $count <= 12 ) {
$message = "Might want to use perltidy";
}
elsif ( $count <= 17 ) {
$message = "Do you like spagetti with your dinner?";
}
else {
$message = "Enter an obsufication contest. You might win";
}
print "$_:\n $count deviations -- $message\n";
}
}
|
Back to
Code Catacombs