#!/usr/bin/perl #Version 0.9 2005.12.08 # #sw zugefügt # .tcl Filenamen nicht mehr case-sensitiv # Schlüsselwürter werden erstmal nur am Zeilenanfang erkannt. Ausnahme ist Kursivschrift # Schlüsselwörter: #t (Titel) Überschrift, die im Fensterrahmen angezeigt wird (Wenn nicht angegeben: "Zabex for everybody") #1 Überschrift (Auf der Seite) - H1 #2 Unter-Überschrift #a Link mit gleichlautendem Text #a www.conrad.de #ref Link mit anderslautendem Text #ref www.da.de hier klicken #my interner Link mit anderslautendem Text #my legende.html Hier is alles erklärt #it1 Kursiv ein oder #em1 oder #k #it0 Kursiv aus oder #em0 oder #K #bild filename alt-Text #img filename #avi filename #extimg link auf externes Bild #sw Software #h Horizontale linie (Original
Kommentieren | Startseite |
Best view: use a W3C compatible HTML-browser.
Curious view: use an Editor!/g; $line=$_; if (not /^#/ ){ if ((0==$p) && (0==$pre)){ $p=1; $line="
".$line;
}
# @words=split / /,$line;
# push(@doc,@words);
push(@doc,$line);
next;
}
elsif (/^\s*#waf[r\-]/) { #wafr WAF-Rot
$txt="
\n";
if (0==$p){
$p=1;
$txt="
".$txt;
}
push(@doc,$txt);
copybin("waf_r.gif","waf_r.gif");
}
elsif (/^\s*#waf[yo00]/) { #wafr WAF-Gelb
$txt="
\n";
if (0==$p){
$p=1;
$txt="
".$txt;
}
push(@doc,$txt);
copybin("waf_y.gif","waf_y.gif");
}
elsif (/^\s*#waf[g\+]/) { #wafr WAF-Gruen
$txt="
\n";
if (0==$p){
$p=1;
$txt="
".$txt; } push(@doc,$txt); copybin("waf_g.gif","waf_g.gif"); } elsif (/^\s*(#bg\s+)(.+)$/) { #bg: Hintergrundbild $hintergrundbild=$2; $pathAndPic=$pooldir.$hintergrundbild; copybin($hintergrundbild,$hintergrundbild); } elsif (/^\s*(#t\s+)(.+)$/) { #Titel $titel=$2; } elsif (/^\s*(#1\s+)(.+)$/) { #Ueberschrift1 $eintrag=$2; $key=lc $eintrag; $key=~s/\s*\b(..)[^\s]+/$1/g; $key=~s/[&;]//g; $txt="
$txt"; } push(@doc,$txt); copybin("striped.gif","striped.gif"); } elsif (/^\s*#h\s*$/) { #h - Original
\n$xxx\n"; $pre=1; if (1==$p){ $p=0; $txt="$txt"; } push(@doc,$txt); } elsif (/^\s*#pre0\s*$/) { #pre Preformatierter Quelltext Aus $xxx="-"x70; $txt="$xxx\n\n\n"; $pre=0; push(@doc,$txt); } elsif (/^\s*#a\s+(.+)$/) { #a (Link) $link = $1; $ref = lc $link; $txt="$link\n"; if (0==$p){ $p=1; $txt="
$txt"; } push(@doc,$txt); } elsif (/^\s*#extimg\s+[http:\/\/]?(.+)$/) { #extimg (externes Bild - Link auf Bild) $link = $1; $txt="\n"; if (0==$p){ $p=1; $txt="
$txt"; } push(@doc,$txt); } elsif (/^\s*#ref\s+([^\s]+)\s+(.+)$/) { #ref (Link mit anderem Text) $link = $2; $ref = lc $1; $txt="$link\n"; if (0==$p){ $p=1; $txt="
$txt"; } push(@doc,$txt); } elsif (/^\s*#my\s+([^\s]+)\s+(.+)$/) { #ref auf interne Page (Link mit anderem Text) $link = $2; $ref = lc $1; $txt="$link\n"; if (0==$p){ $p=1; $txt="
$txt"; } push(@doc,$txt); } elsif (/^\s*(#img\s+)([^\s]+)\s+(.+)$/) {#Bild mit ALT $img=$2; $PathAndImg=$path.$img; $alt="[".$3; $img=~m/(\.[a-z]{3})\s*$/i; $typ=$1; if (-f $PathAndImg){ ($width,$height) = imgsize($PathAndImg); $size=sprintf("%1.1f", ((-s $PathAndImg)+500)/1000); $alt.="($size"."k)]"; }else{ $width=180; $height=50; $size=0; $alt.="($PathAndImg FEHLT)"; } $bildname=sprintf("%c%c%d",97+($projektnr /26), 97+$projektnr %26, $bildnr); # $txt=""; # if ($bildnr<27){ # $bildname=sprintf("%c",96+$bildnr); # }elsif($bildnr<26*26){ # $bildname=sprintf("%c%c",96+($bildnr /26), 97+$bildnr %26); # }else{ # $bildname=sprintf("%d",$bildnr-26*26); # } $bildname.=$typ; $bildnr++; copybin($bildname,$PathAndImg); $txt=""; if (0!=$p){ $p=0; $txt="
".$txt; } push(@doc,$txt); } elsif (/^\s*(#img\s+)([^\s]+)\s*$/) { #Bild ohne ALT $img=$2; $img=~m/(\.[a-z]{3})\s*$/i; $typ=$1; $PathAndImg=$path.$img; ($width,$height) = imgsize($img); if (-f $PathAndImg){ ($width,$height) = imgsize($PathAndImg); $size=sprintf("%1.1f", ((-s $PathAndImg)+500)/1000); $alt="[Bild($size"."k)]"; }else{ $width=180; $height=50; $size=0; $alt="($PathAndImg FEHLT)"; } $bildname=sprintf("%c%c%d",97+($projektnr /26), 97+$projektnr %26, $bildnr); # if ($bildnr<26){ # $bildname=sprintf("%c",96+$bildnr); # }elsif($bildnr<26*26){ # $bildname=sprintf("%c%c",96+($bildnr /26), 97+$bildnr %26); # }else{ # $bildname=sprintf("%d",$bildnr-26*26); # } $bildname.=$typ; $bildnr++; copybin($bildname,$PathAndImg); $txt=""; #$txt=""; if (0!=$p){ $p=0; $txt="".$txt; } push(@doc,$txt); } # elsif (/^\s*(#img2\s+)([^;]+);([^;]+);([^;]+);([^;]+)\s*$/) {#Bild mit 2x ALT # $img1=$2; # $alt1=$4; # $img2=$3; # $alt2=$5; # ($width1,$height1) = imgsize($img1); # ($width2,$height2) = imgsize($img2); # $txt="". # " |
". # " |
$txt"; } push(@doc,$txt); #$bildname.=$typ; $bildnr++; copybin($filmname,$PathAndAvi); } elsif (/^\s*#sw\s+([^\s]+)$/) { #Software (mit Programmnamen=Text, intern) $sw = lc $1; $PathAndSw=$path.$sw; $txt="$sw\n"; if (0==$p){ $p=1; $txt="
$txt"; } push(@doc,$txt); copybin($sw,$PathAndSw); } else{ print"\n********** ERROR ************\n$line\n"; push(@doc,"\n********** ERROR ************\n$line\n"); $errcnt++; } } close IN; if (0!=$p){ $p=0; push(@doc,"
\n"); } } # ---------------------------------------------------------------------- # ---------------------------------------------------------------------- # ---------------------------------------------------------------------- $p=0; @basedirs=($basedir); getFilenames(@basedirs); #print join ("\n",@fname); foreach my $filename (sort @fname){ @doc=(); $titel="Zabex for everybody"; $hintergrundbild="buche.jpg"; $filesize=-s $filename; $projektnr++; print "$projektnr $filename \t ($filesize Bytes)\n"; $pre=0; $p=0; preprocess($filename); #print "Fertig mit [$filename]\n"; # $head=<<'EOT'; EOT $meta=</){ $pre=1; } if (0==$pre){ foreach $word (split / /,$line){ if ($sinus>0){ $index+=3.1415926/10; # $indent=20+(sin($index)*9)-($index); $indent=10+(sin($index)*9); $indent=0 if $indent<0; $txt=" "x$indent; print OUT $txt.$word."\n"; }elsif($wasserzeichen gt ""){ print OUT $word." "; $len+=length($word)+1; $stop=0; do{ $pos=int($len / length($wasserzeichen)); if ($pos92){ $len=0; print OUT "\n"; $patternindex++; $patternindex=0 if $patternindex> $#pattern; $pattern=$pattern[$patternindex]; } }else{ $len+=length($line); print OUT $word." "; if ($len>80){ $len=0; print OUT "\n"; } } } }else{ print OUT "$line\n"; } if ($line=~/^\s*<\/pre>/){ $pre=0; } } # print OUT @doc; print OUT "