2013-10-30 20:44:09 +01:00
|
|
|
#!/usr/bin/perl -w
|
|
|
|
|
|
|
|
use JavaScript::Beautifier qw/js_beautify/;
|
|
|
|
|
|
|
|
unless ( $ARGV[0] and -e $ARGV[0] ) {
|
|
|
|
die "Usage $0 <file.js>";
|
|
|
|
}
|
|
|
|
|
|
|
|
open F, $ARGV[0] or die($!);
|
|
|
|
my $src;
|
|
|
|
while (<F>) { $src .= $_; }
|
|
|
|
close F;
|
|
|
|
|
2013-11-03 21:39:58 +01:00
|
|
|
my @clean = split /\n/, js_beautify( $src, {
|
2013-10-30 20:44:09 +01:00
|
|
|
indent_size => 1, indent_character => "\t", preserve_newlines => 1 }
|
|
|
|
);
|
|
|
|
|
2013-11-03 21:39:58 +01:00
|
|
|
# Clean long lines for tabs
|
|
|
|
foreach(@clean){
|
|
|
|
if(/\[\s*.{70}/ and /\[\s*(?:['"].*['"],\s*)*\]/) {
|
|
|
|
/^(\s*)/;
|
|
|
|
my $tab = $1;
|
|
|
|
s/(['"])([^"']*)\1(,?)\s*/ $1$2$1$3\n$tab /g;
|
|
|
|
}
|
|
|
|
$_.="\n";
|
|
|
|
}
|
|
|
|
|
|
|
|
open F, ">",$ARGV[0] or die($!);
|
|
|
|
print F @clean;
|
|
|
|
|