Mercurial > ~dholland > hg > ag > index.cgi
diff doc/manual/buildchapter.sh @ 0:13d2b8934445
Import AnaGram (near-)release tree into Mercurial.
author | David A. Holland |
---|---|
date | Sat, 22 Dec 2007 17:52:45 -0500 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/doc/manual/buildchapter.sh Sat Dec 22 17:52:45 2007 -0500 @@ -0,0 +1,73 @@ +#!/bin/sh +# buildchapter.sh - build just one chapter of the AG manual +# usage: path-to-doc/manual/buildchapter.sh filename +# +# The build happens in a subdirectory so as not to leave turds behind +# that might confuse the main build. +# +# The filename should not have a path on it. +# + +if [ $# != 1 ]; then + echo "Usage: $0 filename" 1>&2 + exit 1 +fi + +case "$1" in + /*) echo "$0: filename given with path" 1>&2; exit 1;; + *.tex) ;; + *) echo "$0: not a tex file?" 1>&2; exit 1;; +esac + +TMPDIR=.pdftmp.$$ +SRCDIR=`dirname "$0"` +INPUT="$1" +INPUTBASE=`echo "$INPUT" | sed 's/\.tex$//'` +OUTPUT="$INPUTBASE.pdf" + +case "$SRCDIR" in + /*) ;; + *) SRCDIR="../$SRCDIR";; +esac + +echo ' [MKDIR] '"$TMPDIR" +mkdir "$TMPDIR" || exit 1 +cd "$TMPDIR" + +clean() { + cd .. + echo ' [RM] '"$TMPDIR" + rm -rf "$TMPDIR" +} +trap clean 0 HUP INT TERM + +TEXINPUTS=".:${SRCDIR}:" +export TEXINPUTS + +for F in agdefs.tex "$INPUT"; do + echo ' [CP] '"$F" + cp "$SRCDIR/$F" . || exit 1 +done + +echo ' [CREATE] tmp.tex' +( + echo '\documentclass{book}' + echo '\include{agdefs}' + echo '\begin{document}' + echo '\include{'"$INPUTBASE"'}' + echo '\end{document}' +) > tmp.tex + +echo ' [LATEX] tmp.tex' +#pdflatex tmp.tex || exit 1 +pdflatex "\\newcommand{\\nohtml}{1}\\input{tmp.tex}" + + +echo ' [MV] '"$OUTPUT" +mv -f tmp.pdf ../"$OUTPUT" + +# handled by clean() +#cd .. +#rm -rf $TMPDIR +exit 0 +