Mercurial > dottes
diff makeWeb.sh @ 360:01ded8741361
Use server-side includes (with Apache XBitHack setting) in web.
This means that we can have one main web page, dottes.html, for each
book and include the intro and tunelist to make the page. This removes
the separate header and footer components.
Perhaps we should use a template engine instead to generate the output.
That means choosing one. And preferably one that isn't aimed only at
HTML so we could use it for the printed books. More research required.
author | Jim Hague <jim.hague@acm.org> |
---|---|
date | Wed, 21 Aug 2013 10:32:50 +0100 |
parents | 2a7d03d6a89f |
children | 265539086836 |
line wrap: on
line diff
--- a/makeWeb.sh Wed Aug 21 10:28:10 2013 +0100 +++ b/makeWeb.sh Wed Aug 21 10:32:50 2013 +0100 @@ -24,6 +24,7 @@ webdir=$dir/web/$1 graphicsdir=$dir/graphics/$1 output=index.html +tunelist=tunelist.html booke=$1 masterbooke=$2 title=$booke @@ -37,9 +38,6 @@ if [ -r $bookedir/subtitle.txt ]; then subtitle=`cat $bookedir/subtitle.txt` fi -if [ -r $bookedir/intro.txt ]; then - intro=`txt2tags --no-headers --target=html --outfile=- $bookedir/intro.txt` -fi if [ -n "$instrument" ]; then title="${title} ($instrument)" @@ -49,8 +47,20 @@ mkdir -p $webdir sed -e "s/@BUILD@/$buildno/" -e "s/@SUBTITLE@/$subtitle/" \ - -e "s/@TITLE@/$title/" -e "s/@INTRO@/$intro/" \ - -e "s/@BOOK@/$booke/" dottes.html.header > $webdir/$output + -e "s/@TITLE@/$title/" -e "s/@BOOK@/$booke/" dottes.html > $webdir/$output + +# Mark output as executable so it is scanned for server-side includes. +chmod +x $webdir/$output + +for item in intro +do + rm -f $webdir/$item.html + if [ -r $booke/$item.txt ]; then + txt2tags --no-headers --target=html --outfile=$webdir/$item.html $booke/$item.txt + else + touch $webdir/$item.html + fi +done # Copy in the book PDFs. Like the graphics, Midi etc. these are assumed # to be already generated. @@ -103,7 +113,5 @@ -e "s/@TUNE@/${name}/" dottes.html.tune > $webdir/$tunepage sed -e "s/@TITLE@/${title//&/\&}/" \ - -e "s/@TUNE@/${name}/" dottes.html.tuneindex >> $webdir/$output + -e "s/@TUNE@/${name}/" dottes.html.tuneindex >> $webdir/$tunelist done - -cat dottes.html.footer >> $webdir/$output