#!/usr/bin/perl -s
use Text::RewriteRules;
use Data::Dumper;
##use Skel::Data;
use Parse::DSLUtils qw{:ftemplate};
skimport();
our ($t);
##use strict;
##use warnings;
our %TAB;
our %TAB_ARGS;
undef $/;
my $ID = qr{\b[a-zA-Z]\w*};
while(<>){
if($t){ print HEAD(), _loadit(h2(html($_))), foot();}
else { print _loadit(h2(html($_))); }
}
RULES html
\bperl[[:CBB:]]=e=> do($+{CBB}),$@ !! -f $+{CBB}
\bperl[[:CBB:]]==> (((***** o FICHEIRO desapareceu '$+{CBB}')))
($ID)[[:CBB:]]=e=> $TAB{$1}->($+{CBB})!! defined $TAB{$1}
\binc[[:CBB:]]=e=> `cat $+{CBB}`!! -f $+{CBB}
\binc[[:CBB:]]==> (((***** o FICHEIRO desapareceu '$+{CBB}')))
($ID)=[[:CBB:]]=e=> savefun($1,$+{CBB},1),""
($ID)#(\d)=[[:CBB:]]=e=> savefun($1,$+{CBB},$2),""
($ID)[[:CBB:]]==><$1>$+{CBB}$1>
<([^<>]*)>\s*($ID):[[:CBB:]]==><$1 $2='$+{CBB}'>
(\\[\{\}])=e=>_savit($1)
ENDRULES
RULES/m h2
$a"); } sub savefun{ my ($n,$f,$i)=@_; my @a= m/#(\d+)/g; $i ||= (sort { <=> } @a)[-1]; $TAB_ARGS{$n}=$i; $TAB{$n}=sub{ my $a=shift; my $c = $f ; $c =~ s/#1/$a/g; $c}; } sub foot{"