new parameter addspacechars
[swftools.git] / doc / codebeautifier.pl
index 094c523..169b23c 100644 (file)
@@ -1,18 +1,26 @@
+$nr = 1;
 while(<stdin>)
 {
-    if(/\[CALLPERL .*left\]/ ... /\[CALLPERL end\]/) {
+    if(/\[CALLPERL\s+(.*)\s+left\]/ ... /\[CALLPERL end\]/) {
+       $lang = $1 if($1);
        $code .= $_ if(!/CALLPERL/);
-       $name = $1 if(/.swf.*name=([^&][^ ]*)/);
-       $name = $1 if(/.swf.*name=&quot;([^&]*)&quot;/);
+       $name = $1 if(/.flash.*name=([^&][^ ]*)/);
+       $name = $1 if(/.flash.*name=&quot;([^&]*)&quot;/);
+       chomp $name;
     } 
     elsif(/\[CALLPERL .*right\]/ ... /\[CALLPERL end\]/) {
        $highlight .= $_ if(!/CALLPERL/);
     }
-    elsif ($code ne "") {
+    elsif ($code ne "" && ($lang eq "swfc" || $lang eq "sc")) {
        $code =~ s/&quot;/"/g;
+
+#          print stderr "Warning: ttf->swf\n" if($code =~ s/Arial.ttf/Arial.swf/g);
+
        open(fi, ">tmp.sc");print fi $code;close(fi);
-       system("swfc tmp.sc");
+       print stderr "[$lang] swfc tmp.sc ($name)\n";
+       system("../src/swfc tmp.sc >&2");
        ($embed = `swfdump -e $name`) =~ /WIDTH="([^"]*)"/;
+       system("cp $name data");
        $width = $1;
        print "<td bgcolor=\"#ffffff\" width=\"$width\">";
        print $embed;
@@ -21,6 +29,21 @@ while(<stdin>)
        print;
        unlink "tmp.sc";
     }
+    elsif ($code ne "" && ($lang eq "python" or $lang eq "shell")) {
+       $code =~ s/&quot;/"/g;
+       if($lang eq "python") {
+          open(fi, ">$nr.py");print fi $code;close(fi);
+           $nr = $nr + 1;
+       }
+       print "<td bgcolor=\"#ffffff\" width=\"$width\">";
+       print $embed;
+       print "</td>";
+       $code="";
+       print;
+    }
+    elsif ($code ne "") {
+       $code="";
+    }
     elsif ($highlight ne "") {
        $highlight =~ s/^\n\s*//g;
        $highlight =~ s/\s*\n$//g;