diff --git a/dottes.html.header b/dottes.html.header index f6726da..4f3fcab 100644 --- a/dottes.html.header +++ b/dottes.html.header @@ -7,11 +7,16 @@

@INTRO@

-You can download a PDF with a booklet of these tunes. There is a -single-sided A5 landscape book, or if you -have a printer that can do duplex (i.e. print on both sides of the +You can download a PDF with a booklet of these tunes. There is an +A5 landscape book with one +tune per page, or an A4 book with two or more tunes +per page. +

+If you have a printer that can do duplex (i.e. print on both sides of the paper), you might like the -double-sided A4 producing an A5 booklet. +A5 booklet. +Prin this onto A4 paper using both sides of the paper, and fold in half. +This makes an A5 booklet.

Issue @BUILD@

diff --git a/dottes.tex.a4header b/dottes.tex.a4header new file mode 100644 index 0000000..55c0ace --- /dev/null +++ b/dottes.tex.a4header @@ -0,0 +1,89 @@ +\documentclass[a4paper,11pt]{article} +\usepackage{fontspec} +\usepackage{graphicx} +\usepackage{fancyhdr} +\usepackage{longtable} + +\usepackage{hyperref} +\hypersetup{ + bookmarks=true,% + colorlinks=true,% + citecolor=black,% + filecolor=black,% + linkcolor=black,% + urlcolor=black +} + +% ----- Common variables + +\def \build {\input{buildno.txt}} + +% ----- Appearance + +%\setmainfont{Century Schoolbook L} +\setmainfont{Times New Roman} + +% ----- Page setup + +\setlength{\parindent}{0pt} + +% Adjust margins for A4 portrait. Increase width by 4cm and height by 4cm. +\addtolength{\textwidth}{4cm} +\addtolength{\hoffset}{-2cm} + +\addtolength{\textheight}{4cm} +\addtolength{\voffset}{-2cm} + +% Move the top margin up a further cm. +\addtolength{\textheight}{1cm} +\addtolength{\voffset}{-1cm} + +% ----- + +% Don't show section numbers. +\setcounter{secnumdepth}{-1} + +% ----- + +\begin{document} + +% ----- Headers and footers + +\pagestyle{fancyplain} +\fancyhf{} +\lfoot{Issue \build} +\rfoot{\thepage} +\renewcommand{\headrulewidth}{0pt} + +% ----- Title page and contents + +\title{Ye Crie Havock Booke of Dottes \\ \input{subtitle.txt}} + +\author{Cry Havoc} + +\date{\today} + +\maketitle + +\newpage + +\tableofcontents + +\newpage + +% ----- + +\section{Introduction} + +\input{intro.txt} + +This book is a work in progress. You can download the latest version from +\url{http://dottes.cryhavoc.org.uk/}. + +% ----- + +\section{Tunes} + +Tunes are arranged in alphabetical order of tune title. + +\newpage diff --git a/dottes.tex.header b/dottes.tex.a5header similarity index 95% rename from dottes.tex.header rename to dottes.tex.a5header index 93a5733..d372567 100644 --- a/dottes.tex.header +++ b/dottes.tex.a5header @@ -40,6 +40,11 @@ % ----- +% Don't show section numbers. +\setcounter{secnumdepth}{-1} + +% ----- + \begin{document} % ----- Headers and footers diff --git a/dottesona4.tex b/dottesA5onA4booklet.tex similarity index 85% rename from dottesona4.tex rename to dottesA5onA4booklet.tex index 2279065..8bb1d67 100644 --- a/dottesona4.tex +++ b/dottesA5onA4booklet.tex @@ -10,5 +10,5 @@ \usepackage{ifpdf,ifxetex} \begin{document} -\includepdf[pages=-, nup=1x2, booklet=true]{dottes.pdf} +\includepdf[pages=-, nup=1x2, booklet=true]{dottesA5.pdf} \end{document} diff --git a/makeAll.sh b/makeAll.sh new file mode 100755 index 0000000..d32e57d --- /dev/null +++ b/makeAll.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# +# Build all forms of the Booke. + +if [ $# != 1 ]; then + echo "Usage: makeAll.sh " + exit 1 +fi + +makeABooke() +{ + ./makeGraphics.sh $1 + ./makeBookeA5.sh $1 + ./makeBookeA4.sh $1 + ./makeWebItems.sh $1 + ./makeWeb.sh $1 +} + +makeABooke $1 +./makeCello.sh $1 +make ABooke $1-Morris diff --git a/makeBookeA4.sh b/makeBookeA4.sh new file mode 100755 index 0000000..6c295b8 --- /dev/null +++ b/makeBookeA4.sh @@ -0,0 +1,90 @@ +#!/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: makeBookeA4.sh " + exit 1 +fi + +dir=`pwd` + +booke=$dir/$1 +builddir=$dir/build +graphicsdir=$dir/graphics/$1 +output=dottesA4.tex +outputxdv=${output/%.tex/.xdv} +outputpdf=${output/%.tex/.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.a4header $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 "\begin{center}" >> $builddir/$output + echo -E "\phantomsection" >> $builddir/$output + echo -E "\hypertarget{$name}{\includegraphics[width=\textwidth,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 + +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 + +mv $outputpdf $dir/$1-A4.pdf + +cd $dir diff --git a/makeBooke.sh b/makeBookeA5.sh similarity index 86% rename from makeBooke.sh rename to makeBookeA5.sh index ca08825..9bab335 100755 --- a/makeBooke.sh +++ b/makeBookeA5.sh @@ -8,7 +8,7 @@ # if [ $# != 1 ]; then - echo "Usage: makeBooke.sh " + echo "Usage: makeBookeA5.sh " exit 1 fi @@ -17,11 +17,11 @@ dir=`pwd` booke=$dir/$1 builddir=$dir/build graphicsdir=$dir/graphics/$1 -output=dottes.tex +output=dottesA5.tex outputxdv=${output/%.tex/.xdv} outputpdf=${output/%.tex/.pdf} -outputa4=dottesona4.tex -outputa4pdf=dottesona4.pdf +outputa4=dottesA5onA4booklet.tex +outputa4pdf=dottesA5onA4booklet.pdf mkdir -p $builddir @@ -36,7 +36,7 @@ if [ -r $booke/intro.txt ]; then else touch $builddir/intro.txt fi -cp dottes.tex.header $builddir/$output +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. @@ -51,6 +51,10 @@ find $booke -name "*.abc" | sort | 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 @@ -87,7 +91,7 @@ else fi xelatex $outputa4 -mv $outputpdf $dir/$1.pdf -mv $outputa4pdf $dir/${1}-booklet.pdf +mv $outputpdf $dir/$1-A5.pdf +mv $outputa4pdf $dir/${1}-A5bookletA4.pdf cd $dir