@@ -37,22 +37,15 @@ my %processor = (
37 proc => sub {
37 proc => sub {
38 my ($template) = @_;
38 my ($template) = @_;
40− my $slides = escape_for_haskell(slurp "ui/default/slides.js");
40+ my (@files) = qw(slides.js s5-core.css framing.css pretty.css
41− my $s5core = escape_for_haskell(slurp "ui/default/s5-core.css");
41+ opera.css outline.css print.css);
42− my $framing = escape_for_haskell(slurp "ui/default/framing.css");
42+
43− my $pretty = escape_for_haskell(slurp "ui/default/pretty.css");
43+ foreach my $file (@files) {
44− my $opera = escape_for_haskell(slurp "ui/default/opera.css");
45− my $outline = escape_for_haskell(slurp "ui/default/outline.css");
46− my $print = escape_for_haskell(slurp "ui/default/print.css");
44+ my $replacement = escape_for_haskell(slurp "ui/default/$file");
47−
45+ my $escapedfile = $file;
48− $template =~ s/\@slides\.js@/$slides/;
46+ $escapedfile =~ s/\./\\./g;
49− $template =~ s/\@s5-core\.css@/$s5core/;
47+ $template =~ s/\@$escapedfile\@/$replacement/;
50− $template =~ s/\@framing\.css@/$framing/;
48+ }
51− $template =~ s/\@pretty\.css@/$pretty/;
52− $template =~ s/\@opera\.css@/$opera/;
53− $template =~ s/\@outline\.css@/$outline/;
54− $template =~ s/\@print\.css@/$print/;
56 return $template;
49 return $template;
@@ -79,15 +72,11 @@ my %processor = (
79 proc => sub {
72 proc => sub {
80 my ($template) = @_;
73 my ($template) = @_;
82− my $html = escape_for_haskell(slurp "headers/HtmlHeader");
75+ my (@headers) = split(/\s/,`ls headers`);
83− my $latex = escape_for_haskell(slurp "headers/LaTeXHeader");
76+ foreach my $header (@headers) {
84− my $rtf = escape_for_haskell(slurp "headers/RTFHeader");
85− my $s5 = escape_for_haskell(slurp "headers/S5Header");
77+ my ($replacement) = escape_for_haskell(slurp "headers/$header");
86−
78+ $template =~ s/\@$header\@/$replacement/;
87− $template =~ s/\@HtmlHeader@/$html/;
79+ }
88− $template =~ s/\@LaTeXHeader@/$latex/;
89− $template =~ s/\@RTFHeader@/$rtf/;
90− $template =~ s/\@S5Header@/$s5/;
92 return $template;
81 return $template;