script fixes
[lectures/dfb-slides.git] / create-xml
1 #!/bin/sh
2
3 if [ -z "$1" ]; then
4         echo "usage: $0 <name.xml> <unterpunkte kapitel 1> ... <... kappitel n>"
5         exit 
6 fi
7
8 name=$1 ; shift 1
9 dir=`echo $name | sed 's/.xml//'`
10 mkdir $dir
11
12 # print normal header
13 cat > $dir/$name << EOF
14 <?xml version='1.0'?>
15
16 <slides effect="slide top left, blend"
17         bgcolor="#000000" fgcolor="#FFFFFF" 
18         face="../ttf/decker.ttf" size="15" 
19         bgimage="../img/bg.png" 
20         bullet="../img/bullet.png"
21         screen_width="1024" screen_height="768">
22
23   <slide effect="none">
24     <header size="10"></header>
25     <header fgcolor="#5080FF" size="80">$dir</header>
26     <header size="20"></header>
27     <header fgcolor="#5080FF" size="35">desc</header>
28     <header size="40"></header>
29     <text>authors</text>
30     <text/>
31     <text>email: </text>
32     <text>event: </text>
33     <text>location: </text>
34   </slide>
35
36 EOF
37
38 total=$#
39 ((count = 0))
40
41 cat >> $dir/$name << EOF
42   <slide>
43     <header size="10"></header>
44     <header fgcolor="#8080FF" size="35">Inhalt</header>
45     <header size="20"></header>
46
47 EOF
48 for i in $@; do
49         ((j = 0))
50         ((count += 1))
51         cat >> $dir/$name << EOF
52    <text size="20">Kapitel $count</text>
53        <text/>
54 EOF
55         while [ "1" ]; do
56                 ((j += 1))
57                 cat >> $dir/$name << EOF
58         <listitem size="20">$j</listitem>
59 EOF
60                 [ "$j" = "$i" ] && break
61         done
62         cat >> $dir/$name << EOF
63         <text/>
64 EOF
65 done
66 cat >> $dir/$name << EOF
67   </slide>
68
69 EOF
70
71 ((count = 0))
72
73 for i in $@; do
74         ((count += 1))
75         cat >> $dir/$name << EOF
76
77   <slide>
78     <header size="10"></header>
79     <header fgcolor="#8080FF" size="35">Kapitel $count</header>
80     <header size="20"></header>
81
82 EOF
83         ((j = 0))
84         while [ "1" ]; do
85                 ((j += 1))
86                 cat >> $dir/$name << EOF
87     <text size="20">$j</text>
88         <text/>
89         <listitem size="20">dd, wenn zuviel! :)</listitem>
90         <listitem size="20">dd, wenn zuviel! :)</listitem>
91         <listitem size="20">dd, wenn zuviel! :)</listitem>
92         <listitem size="20">dd, wenn zuviel! :)</listitem>
93         <text/>
94 EOF
95                 if [ "$i" = "$j" ]; then
96                         echo "debug: writing $j, finished"
97                         break
98                 else
99                         echo "debug: writing $j from $i"
100                 fi
101         done
102         cat >> $dir/$name << EOF
103   </slide>
104
105 EOF
106 done
107 cat >> $dir/$name << EOF
108 </slides>
109 EOF
110
111 echo "done ..."