Revise build to allow multi-section books.

This commit is contained in:
Jim Hague 2016-11-04 17:59:10 +00:00
parent 24f0fee542
commit c61a2d6136
3 changed files with 67 additions and 35 deletions

View File

@ -18,7 +18,6 @@
\usepackage{hyperref} \usepackage{hyperref}
\hypersetup{ \hypersetup{
bookmarks=true,%
colorlinks=true,% colorlinks=true,%
citecolor=black,% citecolor=black,%
filecolor=black,% filecolor=black,%

View File

@ -11,10 +11,10 @@ makeABooke()
{ {
./makeGraphics.sh "$1" ./makeGraphics.sh "$1"
./makeBookeTunePages.sh "$1" ./makeBookeTunePages.sh "$1"
./makeBooke.sh "$1" A4 ./makeBooke.sh A4 "$1"
./makeBooke.sh "$1" A5 ./makeBooke.sh A4 "$1"
./makeBooklet.sh "$1" ./makeBooklet.sh "$1"
./makeBooke.sh "$1" Nook ./makeBooke.sh Nook "$1"
./makeWebGraphics.sh "$1" ./makeWebGraphics.sh "$1"
./makeWebAudio.sh "$1" ./makeWebAudio.sh "$1"
./makeWeb.sh "$1" "$1" "$2" ./makeWeb.sh "$1" "$1" "$2"
@ -24,10 +24,10 @@ makeATransposedBooke()
{ {
./makeGraphics.sh "$1" ./makeGraphics.sh "$1"
./makeBookeTunePages.sh "$1" ./makeBookeTunePages.sh "$1"
./makeBooke.sh "$1" A4 ./makeBooke.sh A4 "$1"
./makeBooke.sh "$1" A5 ./makeBooke.sh A5 "$1"
./makeBooklet.sh "$1" ./makeBooklet.sh "$1"
./makeBooke.sh "$1" Nook ./makeBooke.sh Nook "$1"
./makeWebGraphics.sh "$1" ./makeWebGraphics.sh "$1"
./makeWeb.sh "$1" "$2" "$3" ./makeWeb.sh "$1" "$2" "$3"
} }

View File

@ -7,47 +7,80 @@
# makeBookeTunePages.sh. # makeBookeTunePages.sh.
# #
if [ $# != 2 ]; then if [ $# -lt 2 ]; then
echo "Usage: makeBooke.sh <book dir name> <A4|A5>" echo "Usage: makeBooke.sh <A4|A5> <book dir name> [<book dir name>...]"
exit 1 exit 1
fi fi
dir=`pwd` dir=`pwd`
booke=$dir/$1
papersize=$2
builddir=$dir/build builddir=$dir/build
booketex=$dir/dottes.tex booketex=$builddir/dottes.tex
bookepdf=$builddir/dottes.pdf bookepdf=$builddir/dottes.pdf
papersize=$1
shift
mkdir -p $builddir mkdir -p $builddir
if [ $# -eq 1 ]; then
bookename=$1
for item in title subtitle instrument
do
rm -f $builddir/$item.txt
if [ -r $1/$item.txt ]; then
cp $dir/$1/$item.txt $builddir/$item.txt
else
touch $builddir/$item.txt
fi
done
else
bookename="BumperBooke"
echo "The Bumper Booke" > $builddir/title.txt
echo "The collected Bookes of Bottes" > $builddir/subtitle.txt
rm -f $builddir/instrument.txt
if [ -r $1/instrument.txt ]; then
cp $1/instrument.txt $builddir/instrument.txt
else
touch $builddir/instrument.txt
fi
fi
cp dottes.tex $builddir cp dottes.tex $builddir
cp buildno.txt $builddir cp buildno.txt $builddir
cp buzzard.pdf $builddir cp buzzard.pdf $builddir
rm -f $builddir/tunes.tex
rm -f $builddir/firstlines.tex
while [ $# -gt 0 ]
do
section=$dir/$1
for item in title subtitle instrument for item in title subtitle instrument
do do
rm -f $builddir/$item.txt $builddir/$1-$item.txt rm -f $builddir/$1-$item.txt
if [ -r $booke/$item.txt ]; then if [ -r $section/$item.txt ]; then
cp $booke/$item.txt $builddir/$item.txt cp $section/$item.txt $builddir/$1-$item.txt
cp $booke/$item.txt $builddir/$1-$item.txt
else else
touch $builddir/$item.txt
touch $builddir/$1-$item.txt touch $builddir/$1-$item.txt
fi fi
done done
for item in intro for item in intro
do do
rm -f $builddir/$1-$item.tex rm -f $builddir/$1-$item.tex
if [ -r $booke/$item.md ]; then if [ -r $section/$item.md ]; then
pandoc --from=markdown --to=latex --output=$builddir/$1-$item.tex $booke/$item.md pandoc --from=markdown --to=latex --output=$builddir/$1-$item.tex $section/$item.md
else else
touch $builddir/$1-$item.tex touch $builddir/$1-$item.tex
fi fi
done done
sed -e "s/@SECTION@/$1/" dottes.tex.section-tunes > $builddir/tunes.tex sed -e "s/@SECTION@/$1/" dottes.tex.section-tunes >> $builddir/tunes.tex
sed -e "s/@SECTION@/$1/" dottes.tex.section-firstlines > $builddir/firstlines.tex sed -e "s/@SECTION@/$1/" dottes.tex.section-firstlines >> $builddir/firstlines.tex
shift
done
for filename in $dir/*.${papersize}.tex for filename in $dir/*.${papersize}.tex
do do
@ -61,6 +94,6 @@ xelatex $booketex
xelatex $booketex xelatex $booketex
xelatex $booketex xelatex $booketex
mv $bookepdf $dir/$1-${papersize}.pdf mv $bookepdf $dir/$bookename-${papersize}.pdf
cd $dir cd $dir