view makeBookeA5.sh @ 223:0ef955669a9a

Make transposed tunes use the original audio. The aim of MIDI and MP3 is to allow the user to hear what a tune sounds like. For transposed bookes, I think this should be reused from the main booke page, because hearing it at the transposed pitch isn't a major help. And in fact given the way cello transposition is done, the sound won't be transposed anyway. And Jane hasn't complained. This will speed up building the bookes by removing audio generation, the slowest process, from the transposed bookes.
author Jim Hague <jim.hague@acm.org>
date Fri, 22 Feb 2013 01:09:37 +0000
parents 6a0bdabfb255
children 1e4443d58177
line wrap: on
line source

#!/bin/bash
#
# Build the Booke. First assemble the book LaTeX, then build it
# into a PDF.
#
# All EPS and PDF tune graphics must be present already. Run
# makeGraphics.sh to make these.
#

if [ $# != 1 ]; then
    echo "Usage: makeBookeA5.sh <book dir name>"
    exit 1
fi

dir=`pwd`

booke=$dir/$1
builddir=$dir/build
graphicsdir=$dir/graphics/$1
output=dottesA5.tex
outputxdv=${output/%.tex/.xdv}
outputpdf=${output/%.tex/.pdf}
outputa4=dottesA5onA4booklet.tex
outputa4pdf=dottesA5onA4booklet.pdf

mkdir -p $builddir

cp buildno.txt $builddir
if [ -r $booke/subtitle.txt ]; then
    cp $booke/subtitle.txt $builddir
else
    touch $builddir/subtitle.txt
fi
if [ -r $booke/intro.txt ]; then
    cp $booke/intro.txt $builddir
else
    touch $builddir/intro.txt
fi
cp dottes.tex.a5header $builddir/$output

# Now, for each tune, make the tune graphic and add it, inside a
# centre section, so the document. Then add a TOC entry.
find $booke -name "*.abc" | sort |
    while read filename
    do
        title=`$dir/abcfield.py --field T --latex $filename`
        name=`basename $filename .abc`
        echo -E "\newpage" >> $builddir/$output
        echo -E "\begin{center}" >> $builddir/$output
        echo -E "\phantomsection" >> $builddir/$output
        echo -E "\hypertarget{$name}{\includegraphics[width=\textwidth,height=0.9\textheight,keepaspectratio]{$graphicsdir/$name}}" >> $builddir/$output
        echo -E "\addcontentsline{toc}{subsection}{$title}" >> $builddir/$output
        echo -E "\end{center}" >> $builddir/$output
        text=$booke/$name.tex
        if [ -r $text ]; then
            cat $text >> $builddir/$output
        fi
    done

cat dottes.tex.firstlines >> $builddir/$output

find $booke -name "*.abc" | sort |
    while read filename
    do
        title=`$dir/abcfield.py --field T --latex $filename`
        name=`basename $filename .abc`
        echo -E "\hyperlink{$name}{$title} & \raisebox{-.25\height}{\includegraphics[width=0.6\textwidth]{$graphicsdir/firstline-$name}} \\\\" >> $builddir/$output
    done

cat dottes.tex.footer >> $builddir/$output

cp $outputa4 $builddir

cd $builddir

# The version of xetex on Squeeze doesn't do pass the A5 landscape instruction
# down to the PDF generator. So split out and do manually.
#
# And, sigh, this fails on Sid. The first page comes out as A4 portrait.
# So try to work out which we are using and run the appropriate command.
ver=`xetex -version | head -n 1`
ver=${ver/*TeX Live /}
ver=${ver/\/*/}
if [ "$ver" == "2009" ]; then
    xelatex -no-pdf $output
    xelatex -no-pdf $output
    xdvipdfmx -p a5 -l $outputxdv
else
    xelatex $output
    xelatex $output
fi
xelatex $outputa4

mv $outputpdf $dir/$1-A5.pdf
mv $outputa4pdf $dir/${1}-A5bookletA4.pdf

cd $dir