jop
[lectures/dfb-slides.git] / parse.pl
1 #!/usr/bin/perl
2
3 @content=<STDIN>;
4 chomp @content;
5
6 @slide=();
7
8 @actions=( "slide top",
9                                 "slide top right",
10                                 "slide top left",
11                                 "slide bottom",
12                                 "slide bottom left",
13                                 "slide bottom right",
14                                 "slide left",
15                                 "slide right");
16
17 print "<?xml version='1.0' encoding='iso-8859-1'?>\n";
18 print "<slides bgcolor=\"#222266\" fgcolor=\"#9999ff\" 
19         face=\"../ttf/decker.ttf\" size=\"15\"
20         bullet=\"../img/bullet.png\"
21         screen_width=\"1024\" screen_height=\"768\">\n";
22
23 push(@content," 23");
24
25 foreach(@content) {
26         s/\#.*//;
27         s/&/&amp;/g;
28         s/</&lt;/;
29         s/>/&gt;/;
30         
31         #s/ue/ü/g;
32         #s/ae/ä/g;
33         #s/oe/ö/g;
34         
35         s/Ue/Ü/g;
36         s/Ae/Ä/g;
37         s/Oe/Ö/g;
38         # unterpunkt
39         if(/^ \d/) {
40                 if(@slide) {
41                         print "<slide>\n";
42                         pop(@slide);
43                         print "<header size=\"20\" fgcolor=\"#22FF22\">$topic</header>\n<text></text>\n";
44                         foreach(@slide) {
45                                 if(/ \+ /) {
46                                         s/\+//;
47                                         print "<text></text>\n<listitem size=\"20\">$_</listitem>\n";
48                                 }
49                                 else {
50                                         print "<text>$_</text>\n";
51                                 }
52                         }
53                         print "</slide>\n\n";
54                 }
55                 @slide=();
56                 #push(@slide,$_);
57                 $topic=$_;
58         }
59         # ueberpunkt
60         elsif (/^\d/) {
61                 #$topic=$_;
62         }
63         # normaler content
64         else {
65                 push(@slide,$_);
66         }
67 }
68
69 print "</slides>\n";