jaja
[lectures/dfb-slides.git] / cont2xml
1 #!/bin/sh
2
3 if [ -z "$1" -o -z "$2" ]; then
4         echo "usage: $0 <name.xml> <metafile>"
5         exit 
6 fi
7 trgfile=$1 ; srcfile=$2
8
9 # general
10 topic=`grep '#\ T' $srcfile | awk -F^ '{ print $2 }'`
11 desc=`grep '#\ D' $srcfile | awk -F^ '{ print $2 }'`
12 author=`grep '#\ A' $srcfile | awk -F^ '{ print $2 }'`
13 email=`grep '#\ M' $srcfile | awk -F^ '{ print $2 }'`
14 event=`grep '#\ E' $srcfile | awk -F^ '{ print $2 }'`
15 location=`grep '#\ L' $srcfile | awk -F^ '{ print $2 }'`
16 xwidth=`grep '#\ X' $srcfile | awk -F^ '{ print $2 }'`
17 ywidth=`grep '#\ Y' $srcfile | awk -F^ '{ print $2 }'`
18
19 # information needed to parse contents
20 total=`grep '^[0-9]' $srcfile | tail -1 | awk '{ print $1 }'`
21 echo "found $total chapters ..."
22 ((count = 0))
23
24 # print normal header
25 cat > $trgfile << EOF
26 <?xml version='1.0'?>
27
28 <slides effect="slide top left, blend"
29         bgcolor="#000000" fgcolor="#FFFFFF" 
30         face="../ttf/decker.ttf" size="15" 
31         bgimage="../img/bg.png" 
32         bullet="../img/bullet.png"
33         screen_width="$xwidth" screen_height="$ywidth">
34
35 <slide effect="none">
36 <header size="10"></header>
37 <header fgcolor="#5080FF" size="80">$topic</header>
38 <header size="20"></header>
39 <header fgcolor="#5080FF" size="35">$desc</header>
40 <header size="40"></header>
41 <text>$author</text>
42 <text/>
43 <text>email: $email</text>
44 <text>event: $event</text>
45 <text>location: $location</text>
46 </slide>
47
48 EOF
49
50 # contents overview page
51 cat >> $trgfile << EOF
52 <slide>
53 <header size="10"></header>
54 <header fgcolor="#8080FF" size="35">Inhalt</header>
55 <header size="20"></header>
56
57 EOF
58 while [ "1" ]; do
59         ((j = 0))
60         ((count += 1))
61         cat >> $trgfile << EOF
62 <text size="20">`grep ^${count} $srcfile | awk '{ print $0 }'`</text>
63 <text/>
64 EOF
65         grep ^\ ${count}\.[0-9] $srcfile | awk '{ print "<text size=\"20\">"$0"</text>" }' >> $trgfile
66         cat >> $trgfile << EOF
67 <text/>
68 EOF
69         [ "$count" = "$total" ] && break
70 done
71 cat >> $trgfile << EOF
72 </slide>
73
74 EOF
75
76 # the conetent
77 # to be continued ... ;)
78 ((count = 0))
79 while [ "1" ]; do 
80         ((j = 0))
81         ((count += 1))
82         echo "creating content chapter $count ..."
83         cat >> $trgfile << EOF
84 <slide>
85 <header size="10"></header>
86 <header fgcolor="#8080FF" size="35">`grep ^${count} $srcfile`</header>
87 <header size="20"></header>
88
89 EOF
90         
91         total_j=`grep ^\ ${count}.[0-9] $srcfile | tail -1 | awk '{ print $1 }' | awk -F . '{ print $2 }'`
92         echo " - ${total_j} chapters below"
93         ((count_j = 0))
94
95         #while [ "1" ]; do
96         #       cat 
97         # temporal devel break, stonefly will have a look at this script now! :)
98
99 cat >> $trgfile << EOF
100 </slide>
101
102 EOF
103         [ "$count" = "$total" ] && break
104 done
105
106
107 cat >> $trgfile << EOF
108 </slides>
109 EOF
110 echo "done ..."