axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Axiom-developer] 20080531.01.tpd.patch (construct book PDFs)


From: daly
Subject: [Axiom-developer] 20080531.01.tpd.patch (construct book PDFs)
Date: Fri, 30 May 2008 07:46:43 -0500

Automatically construct the book PDFs in the final doc directory.
=========================================================================
diff --git a/books/Makefile b/books/Makefile
deleted file mode 100644
index d91e0ea..0000000
--- a/books/Makefile
+++ /dev/null
@@ -1,205 +0,0 @@
-AXIOM=/usr/local/axiom/mnt/fedora5
-TANGLE=${AXIOM}/bin/lib/notangle
-WEAVE=${AXIOM}/bin/lib/noweave 
-LATEX=latex
-MAKEINDEX=makeindex
-DVIPS=dvips -Ppdf
-PS2PDF=ps2pdf
-RM=rm -f
-
-all: 
-
-remake: bookvol0 bookvol1 bookvol2 bookvol3 bookvol4 bookvol5 bookvol6 \
-        bookvol7 bookvol8 bookvol9 bookvol10 bookvol11 bookvol12 toc
-
-toc:
-       @echo "\\documentclass{book}" >toc.tex
-       @echo "\\begin{document}" >>toc.tex
-       @echo "{\\bf Volume ~ 0}: Axiom {\\sl Jenks and Sutor}\\\\" >toc.toc
-       @echo "{\\bf Volume ~ 1}: Axiom {\\sl Tutorial}\\\\" >>toc.toc
-       @echo "{\\bf Volume ~ 2}: Axiom {\\sl Users Guide}\\\\" >>toc.toc
-       @echo "{\\bf Volume ~ 3}: Axiom {\\sl Programmers Guide}\\\\" >>toc.toc
-       @echo "{\\bf Volume ~ 4}: Axiom {\\sl Developers Guide}\\\\" >>toc.toc
-       @echo "{\\bf Volume ~ 5}: Axiom {\\sl Interpreter}\\\\" >>toc.toc
-       @echo "{\\bf Volume ~ 6}: Axiom {\\sl Command}\\\\" >>toc.toc
-       @echo "{\\bf Volume ~ 7}: Axiom {\\sl Hyperdoc}\\\\" >>toc.toc
-       @echo "{\\bf Volume ~ 8}: Axiom {\\sl Graphics}\\\\" >>toc.toc
-       @echo "{\\bf Volume ~ 9}: Axiom {\\sl Compiler}\\\\" >>toc.toc
-       @echo "{\\bf Volume 10}: Axiom {\\sl Algebra}\\\\" >>toc.toc
-       @echo "{\\bf Volume 11}: Axiom {\\sl Browser}\\\\" >>toc.toc
-       @echo "{\\bf Volume 12}: Axiom {\\sl Crystal}\\\\" >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\tableofcontents" >>toc.tex
-       @echo "\\end{document}" >>toc.tex
-       @echo "\\section*{Volume 0: Axiom Jenks and Sutor}" >>toc.toc
-       @cat bookvol0.toc >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\section*{Volume 1: Axiom Tutorial}" >>toc.toc
-       @cat bookvol1.toc >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\section*{Volume 2: Axiom Users Guide}" >>toc.toc
-       @cat bookvol2.toc >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\section*{Volume 3: Axiom Programmers Guide}" >>toc.toc
-       @cat bookvol3.toc >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\section*{Volume 4: Axiom Developers Guide}" >>toc.toc
-       @cat bookvol4.toc >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\section*{Volume 5: Axiom Interpreter}" >>toc.toc
-       @cat bookvol5.toc >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\section*{Volume 6: Axiom Command}" >>toc.toc
-       @cat bookvol6.toc >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\section*{Volume 7: Axiom Hyperdoc}" >>toc.toc
-       @cat bookvol7.toc >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\section*{Volume 8: Axiom Graphics}" >>toc.toc
-       @cat bookvol8.toc >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\section*{Volume 9: Axiom Compiler}" >>toc.toc
-       @cat bookvol9.toc >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\section*{Volume 10: Axiom Algebra}" >>toc.toc
-       @cat bookvol10.toc >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\section*{Volume 11: Axiom Browser}" >>toc.toc
-       @cat bookvol11.toc >>toc.toc
-       @echo "\\newpage" >>toc.toc
-       @echo "\\section*{Volume 12: Axiom Crystal}" >>toc.toc
-       @cat bookvol12.toc >>toc.toc
-       @${LATEX} toc.tex
-       @${DVIPS} toc.dvi 2>/dev/null
-       @${PS2PDF} toc.ps >/dev/null
-       @${RM} -f *.toc toc.aux toc.dvi toc.log toc.ps toc.tex toc.toc
-
-bookvol0: 
-       @${LATEX} bookvol0.pamphlet
-       @${LATEX} bookvol0.pamphlet >/dev/null
-       @${DVIPS} bookvol0.dvi 2>/dev/null
-       @${PS2PDF} bookvol0.ps >/dev/null
-       @${RM} bookvol0.aux bookvol0.dvi bookvol0.log bookvol0.ps \
-               bookvol0.idx bookvol0.tex
-
-bookvol1:
-       @(export AXIOM=${AXIOM} && \
-         ${WEAVE} -delay bookvol1.pamphlet >bookvol1.tex)
-       @${LATEX} bookvol1.tex
-       @${LATEX} bookvol1.tex >/dev/null
-       @${DVIPS} bookvol1.dvi 2>/dev/null
-       @${PS2PDF} bookvol1.ps >/dev/null
-       @${RM} bookvol1.aux bookvol1.dvi bookvol1.log bookvol1.ps \
-               bookvol1.idx bookvol1.tex
-
-bookvol2:
-       @(export AXIOM=${AXIOM} && \
-         ${WEAVE} -delay bookvol2.pamphlet >bookvol2.tex)
-       @${LATEX} bookvol2.tex
-       @${LATEX} bookvol2.tex >/dev/null
-       @${DVIPS} bookvol2.dvi 2>/dev/null
-       @${PS2PDF} bookvol2.ps >/dev/null
-       @${RM} bookvol2.aux bookvol2.dvi bookvol2.log bookvol2.ps \
-               bookvol2.idx bookvol2.tex
-
-bookvol3:
-       @(export AXIOM=${AXIOM} && \
-         ${WEAVE} -delay bookvol3.pamphlet >bookvol3.tex)
-       @${LATEX} bookvol3.tex
-       @${LATEX} bookvol3.tex >/dev/null
-       @${DVIPS} bookvol3.dvi 2>/dev/null
-       @${PS2PDF} bookvol3.ps >/dev/null
-       @${RM} bookvol3.aux bookvol3.dvi bookvol3.log bookvol3.ps \
-               bookvol3.idx bookvol3.tex
-
-bookvol4:
-       @(export AXIOM=${AXIOM} && \
-         ${WEAVE} -delay bookvol4.pamphlet >bookvol4.tex)
-       @${LATEX} bookvol4.tex
-       @${LATEX} bookvol4.tex >/dev/null
-       @${DVIPS} bookvol4.dvi 2>/dev/null
-       @${PS2PDF} bookvol4.ps >/dev/null
-       @${RM} bookvol4.aux bookvol4.dvi bookvol4.log bookvol4.ps \
-               bookvol4.idx bookvol4.tex
-
-bookvol5:
-       @(export AXIOM=${AXIOM} && \
-         ${WEAVE} -delay bookvol5.pamphlet >bookvol5.tex)
-       @${LATEX} bookvol5.tex
-       @${LATEX} bookvol5.tex >/dev/null
-       @${DVIPS} bookvol5.dvi 2>/dev/null
-       @${PS2PDF} bookvol5.ps >/dev/null
-       @${RM} bookvol5.aux bookvol5.dvi bookvol5.log bookvol5.ps \
-               bookvol5.idx bookvol5.tex
-
-bookvol6:
-       @(export AXIOM=${AXIOM} && \
-         ${WEAVE} -delay bookvol6.pamphlet >bookvol6.tex)
-       @${LATEX} bookvol6.tex
-       @${LATEX} bookvol6.tex >/dev/null
-       @${DVIPS} bookvol6.dvi 2>/dev/null
-       @${PS2PDF} bookvol6.ps >/dev/null
-       @${RM} bookvol6.aux bookvol6.dvi bookvol6.log bookvol6.ps \
-               bookvol6.idx bookvol6.tex
-
-bookvol7:
-       @(export AXIOM=${AXIOM} && \
-         ${WEAVE} -delay bookvol7.pamphlet >bookvol7.tex)
-       @${LATEX} bookvol7.tex
-       @${LATEX} bookvol7.tex >/dev/null
-       @${DVIPS} bookvol7.dvi 2>/dev/null
-       @${PS2PDF} bookvol7.ps >/dev/null
-       @${RM} bookvol7.aux bookvol7.dvi bookvol7.log bookvol7.ps \
-               bookvol7.idx bookvol7.tex
-
-bookvol8:
-       @(export AXIOM=${AXIOM} && \
-         ${WEAVE} -delay bookvol8.pamphlet >bookvol8.tex)
-       @${LATEX} bookvol8.tex
-       @${LATEX} bookvol8.tex >/dev/null
-       @${DVIPS} bookvol8.dvi 2>/dev/null
-       @${PS2PDF} bookvol8.ps >/dev/null
-       @${RM} bookvol8.aux bookvol8.dvi bookvol8.log bookvol8.ps \
-               bookvol8.idx bookvol8.tex
-
-bookvol9:
-       @(export AXIOM=${AXIOM} && \
-         ${WEAVE} -delay bookvol9.pamphlet >bookvol9.tex)
-       @${LATEX} bookvol9.tex
-       @${LATEX} bookvol9.tex >/dev/null
-       @${DVIPS} bookvol9.dvi 2>/dev/null
-       @${PS2PDF} bookvol9.ps >/dev/null
-       @${RM} bookvol9.aux bookvol9.dvi bookvol9.log bookvol9.ps \
-               bookvol9.idx bookvol9.tex
-
-bookvol10:
-       @(export AXIOM=${AXIOM} && \
-         ${WEAVE} -delay bookvol10.pamphlet >bookvol10.tex)
-       @${LATEX} bookvol10.tex
-       @${LATEX} bookvol10.tex >/dev/null
-       @${DVIPS} bookvol10.dvi 2>/dev/null
-       @${PS2PDF} bookvol10.ps >/dev/null
-       @${RM} bookvol10.aux bookvol10.dvi bookvol10.log bookvol10.ps \
-              bookvol10.idx bookvol10.tex
-
-bookvol11:
-       @(export AXIOM=${AXIOM} && \
-         ${WEAVE} -delay bookvol11.pamphlet >bookvol11.tex)
-       @${LATEX} bookvol11.tex
-       @${LATEX} bookvol11.tex >/dev/null
-       @${DVIPS} bookvol11.dvi 2>/dev/null
-       @${PS2PDF} bookvol11.ps >/dev/null
-       @${RM} bookvol11.aux bookvol11.dvi bookvol11.log bookvol11.ps \
-              bookvol11.idx bookvol11.tex
-
-bookvol12:
-       @(export AXIOM=${AXIOM} && \
-         ${WEAVE} -delay bookvol12.pamphlet >bookvol12.tex)
-       @${LATEX} bookvol12.tex
-       @${LATEX} bookvol12.tex >/dev/null
-       @${DVIPS} bookvol12.dvi 2>/dev/null
-       @${PS2PDF} bookvol12.ps >/dev/null
-       @${RM} bookvol12.aux bookvol12.dvi bookvol12.log bookvol12.ps \
-              bookvol12.idx bookvol12.tex
-
-
diff --git a/books/Makefile.pamphlet b/books/Makefile.pamphlet
new file mode 100644
index 0000000..27843db
--- /dev/null
+++ b/books/Makefile.pamphlet
@@ -0,0 +1,469 @@
+\documentclass{article}
+\usepackage{axiom}
+\begin{document}
+\title{books/Makefile}
+\author{Timothy Daly}
+\maketitle
+\begin{abstract}
+This Makefile creates all the primary documentation for Axiom
+as pdf files in the final output tree.
+\end{abstract}
+\eject
+\tableofcontents
+\eject
+\section{The Makefile}
+<<*>>=
+PDF=${AXIOM}/doc
+IN=${SPD}/books
+LATEX=latex
+MAKEINDEX=makeindex
+DVIPS=dvips -Ppdf
+PS2PDF=ps2pdf
+RM=rm -f
+
+BOOKS=${PDF}/bookvol0.pdf ${PDF}/bookvol1.pdf ${PDF}/bookvol2.pdf \
+      ${PDF}/bookvol3.pdf ${PDF}/bookvol4.pdf ${PDF}/bookvol5.pdf \
+      ${PDF}/bookvol6.pdf ${PDF}/bookvol7.pdf ${PDF}/bookvol8.pdf \
+      ${PDF}/bookvol9.pdf ${PDF}/bookvol10.pdf ${PDF}/bookvol11.pdf \
+      ${PDF}/bookvol12.pdf 
+
+all: ${BOOKS} ${PDF}/toc.pdf
+
+@
+\section{Volume 0: Axiom Jenks and Sutor}
+This is the reconstructed Jenks and Sutor volume.
+<<*>>=
+${PDF}/bookvol0.pdf: ${IN}/bookvol0.pamphlet ${PDF}/axiom.sty
+       @echo 0 making ${PDF}/bookvol0.pdf from ${IN}/bookvol0.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol0.pamphlet ${PDF} ; \
+         cp -pr ${IN}/ps ${PDF} ; \
+         ${WEAVE} -delay bookvol0.pamphlet >bookvol0.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol0.tex ; \
+           ${LATEX} bookvol0.tex >/dev/null ; \
+           ${DVIPS} bookvol0.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol0.ps >/dev/null ; \
+           ${RM} bookvol0.aux bookvol0.dvi bookvol0.log bookvol0.ps \
+                  bookvol0.idx bookvol0.tex bookvol0.pamphlet ; \
+         else \
+           ${LATEX} bookvol0.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol0.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol0.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol0.ps >${TMP}/trace  ; \
+           ${RM} bookvol0.aux bookvol0.dvi bookvol0.log bookvol0.ps \
+                  bookvol0.idx bookvol0.tex bookvol0.pamphlet ; \
+         fi )
+
+@
+\section{Volume 1: Axiom Tutorial}
+This is the tutorial volume. ISBN 1-411-66587-X. 
+Hardcopy is available from Amazon.com or Lulu.com.
+<<*>>=
+${PDF}/bookvol1.pdf: ${IN}/bookvol1.pamphlet ${PDF}/axiom.sty
+       @echo 1 making ${PDF}/bookvol1.pdf from ${IN}/bookvol1.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol1.pamphlet ${PDF} ; \
+         cp -pr ${IN}/ps ${PDF} ; \
+         ${WEAVE} -delay bookvol1.pamphlet >bookvol1.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol1.tex ; \
+           ${LATEX} bookvol1.tex >/dev/null ; \
+           ${DVIPS} bookvol1.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol1.ps >/dev/null ; \
+           ${RM} bookvol1.aux bookvol1.dvi bookvol1.log bookvol1.ps \
+                  bookvol1.idx bookvol1.tex bookvol1.pamphlet ; \
+         else \
+           ${LATEX} bookvol1.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol1.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol1.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol1.ps >${TMP}/trace  ; \
+           ${RM} bookvol1.aux bookvol1.dvi bookvol1.log bookvol1.ps \
+                  bookvol1.idx bookvol1.tex bookvol1.pamphlet ; \
+         fi )
+
+@
+\section{Volume 2: Axiom Users Guide}
+This is a more detailed explanation with current information
+for Axiom users.
+<<*>>=
+${PDF}/bookvol2.pdf: ${IN}/bookvol2.pamphlet ${PDF}/axiom.sty
+       @echo 2 making ${PDF}/bookvol2.pdf from ${IN}/bookvol2.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol2.pamphlet ${PDF} ; \
+         ${WEAVE} -delay bookvol2.pamphlet >bookvol2.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol2.tex ; \
+           ${LATEX} bookvol2.tex >/dev/null ; \
+           ${DVIPS} bookvol2.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol2.ps >/dev/null ; \
+           ${RM} bookvol2.aux bookvol2.dvi bookvol2.log bookvol2.ps \
+                  bookvol2.idx bookvol2.tex bookvol2.pamphlet ; \
+         else \
+           ${LATEX} bookvol2.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol2.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol2.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol2.ps >${TMP}/trace  ; \
+           ${RM} bookvol2.aux bookvol2.dvi bookvol2.log bookvol2.ps \
+                  bookvol2.idx bookvol2.tex bookvol2.pamphlet ; \
+         fi )
+
+@
+\section{Volume 3: Axiom Programmers Guide}
+This is information about the language and algebra hierarchy
+for Spad language programmers.
+<<*>>=
+${PDF}/bookvol3.pdf: ${IN}/bookvol3.pamphlet ${PDF}/axiom.sty
+       @echo making ${PDF}/bookvol3.pdf from ${IN}/bookvol3.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol3.pamphlet ${PDF} ; \
+         ${WEAVE} -delay bookvol3.pamphlet >bookvol3.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol3.tex ; \
+           ${LATEX} bookvol3.tex >/dev/null ; \
+           ${DVIPS} bookvol3.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol3.ps >/dev/null ; \
+           ${RM} bookvol3.aux bookvol3.dvi bookvol3.log bookvol3.ps \
+                  bookvol3.idx bookvol3.tex bookvol3.pamphlet ; \
+         else \
+           ${LATEX} bookvol3.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol3.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol3.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol3.ps >${TMP}/trace  ; \
+           ${RM} bookvol3.aux bookvol3.dvi bookvol3.log bookvol3.ps \
+                  bookvol3.idx bookvol3.tex bookvol3.pamphlet ; \
+         fi )
+
+@
+\section{Volume 4: Axiom Developers Guide}
+This is a collection of userful information for developers.
+<<*>>=
+${PDF}/bookvol4.pdf: ${IN}/bookvol4.pamphlet ${PDF}/axiom.sty
+       @echo making ${PDF}/bookvol4.pdf from ${IN}/bookvol4.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol4.pamphlet ${PDF} ; \
+         ${WEAVE} -delay bookvol4.pamphlet >bookvol4.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol4.tex ; \
+           ${LATEX} bookvol4.tex >/dev/null ; \
+           ${DVIPS} bookvol4.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol4.ps >/dev/null ; \
+           ${RM} bookvol4.aux bookvol4.dvi bookvol4.log bookvol4.ps \
+                  bookvol4.idx bookvol4.tex bookvol4.pamphlet ; \
+         else \
+           ${LATEX} bookvol4.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol4.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol4.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol4.ps >${TMP}/trace  ; \
+           ${RM} bookvol4.aux bookvol4.dvi bookvol4.log bookvol4.ps \
+                  bookvol4.idx bookvol4.tex bookvol4.pamphlet ; \
+         fi )
+
+@
+\section{Volume 5: Axiom Interpreter}
+This is the source code and explanation for the interpreter.
+<<*>>=
+${PDF}/bookvol5.pdf: ${IN}/bookvol5.pamphlet ${PDF}/axiom.sty
+       @echo making ${PDF}/bookvol5.pdf from ${IN}/bookvol5.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol5.pamphlet ${PDF} ; \
+         ${WEAVE} -delay bookvol5.pamphlet >bookvol5.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol5.tex ; \
+           ${LATEX} bookvol5.tex >/dev/null ; \
+           ${DVIPS} bookvol5.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol5.ps >/dev/null ; \
+           ${RM} bookvol5.aux bookvol5.dvi bookvol5.log bookvol5.ps \
+                  bookvol5.idx bookvol5.tex bookvol5.pamphlet ; \
+         else \
+           ${LATEX} bookvol5.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol5.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol5.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol5.ps >${TMP}/trace  ; \
+           ${RM} bookvol5.aux bookvol5.dvi bookvol5.log bookvol5.ps \
+                  bookvol5.idx bookvol5.tex bookvol5.pamphlet ; \
+         fi )
+
+@
+\section{Volume 6: Axiom Command}
+This covers the axiom commands, sman, and some other system related issues.
+<<*>>=
+${PDF}/bookvol6.pdf: ${IN}/bookvol6.pamphlet ${PDF}/axiom.sty
+       @echo making ${PDF}/bookvol6.pdf from ${IN}/bookvol6.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol6.pamphlet ${PDF} ; \
+         ${WEAVE} -delay bookvol6.pamphlet >bookvol6.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol6.tex ; \
+           ${LATEX} bookvol6.tex >/dev/null ; \
+           ${DVIPS} bookvol6.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol6.ps >/dev/null ; \
+           ${RM} bookvol6.aux bookvol6.dvi bookvol6.log bookvol6.ps \
+                  bookvol6.idx bookvol6.tex bookvol6.pamphlet ; \
+         else \
+           ${LATEX} bookvol6.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol6.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol6.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol6.ps >${TMP}/trace  ; \
+           ${RM} bookvol6.aux bookvol6.dvi bookvol6.log bookvol6.ps \
+                  bookvol6.idx bookvol6.tex bookvol6.pamphlet ; \
+         fi )
+
+@
+\section{Volume 7: Axiom Hyperdoc}
+This is the source and explanation for the X11 hyperdoc subsystem
+<<*>>=
+${PDF}/bookvol7.pdf: ${IN}/bookvol7.pamphlet ${PDF}/axiom.sty
+       @echo making ${PDF}/bookvol7.pdf from ${IN}/bookvol7.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol7.pamphlet ${PDF} ; \
+         ${WEAVE} -delay bookvol7.pamphlet >bookvol7.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol7.tex ; \
+           ${LATEX} bookvol7.tex >/dev/null ; \
+           ${DVIPS} bookvol7.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol7.ps >/dev/null ; \
+           ${RM} bookvol7.aux bookvol7.dvi bookvol7.log bookvol7.ps \
+                  bookvol7.idx bookvol7.tex bookvol7.pamphlet ; \
+         else \
+           ${LATEX} bookvol7.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol7.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol7.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol7.ps >${TMP}/trace  ; \
+           ${RM} bookvol7.aux bookvol7.dvi bookvol7.log bookvol7.ps \
+                  bookvol7.idx bookvol7.tex bookvol7.pamphlet ; \
+         fi )
+
+@
+\section{Volume 8: Axiom Graphics}
+This is the source and explanation for the X11 graphics subsystem
+<<*>>=
+${PDF}/bookvol8.pdf: ${IN}/bookvol8.pamphlet ${PDF}/axiom.sty
+       @echo making ${PDF}/bookvol8.pdf from ${IN}/bookvol8.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol8.pamphlet ${PDF} ; \
+         ${WEAVE} -delay bookvol8.pamphlet >bookvol8.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol8.tex ; \
+           ${LATEX} bookvol8.tex >/dev/null ; \
+           ${DVIPS} bookvol8.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol8.ps >/dev/null ; \
+           ${RM} bookvol8.aux bookvol8.dvi bookvol8.log bookvol8.ps \
+                  bookvol8.idx bookvol8.tex bookvol8.pamphlet ; \
+         else \
+           ${LATEX} bookvol8.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol8.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol8.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol8.ps >${TMP}/trace  ; \
+           ${RM} bookvol8.aux bookvol8.dvi bookvol8.log bookvol8.ps \
+                  bookvol8.idx bookvol8.tex bookvol8.pamphlet ; \
+         fi )
+
+@
+\section{Volume 9: Axiom Compiler}
+This is the source and explanation for the spad compiler.
+<<*>>=
+${PDF}/bookvol9.pdf: ${IN}/bookvol9.pamphlet ${PDF}/axiom.sty
+       @echo making ${PDF}/bookvol9.pdf from ${IN}/bookvol9.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol9.pamphlet ${PDF} ; \
+         ${WEAVE} -delay bookvol9.pamphlet >bookvol9.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol9.tex ; \
+           ${LATEX} bookvol9.tex >/dev/null ; \
+           ${DVIPS} bookvol9.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol9.ps >/dev/null ; \
+           ${RM} bookvol9.aux bookvol9.dvi bookvol9.log bookvol9.ps \
+                  bookvol9.idx bookvol9.tex bookvol9.pamphlet ; \
+         else \
+           ${LATEX} bookvol9.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol9.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol9.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol9.ps >${TMP}/trace  ; \
+           ${RM} bookvol9.aux bookvol9.dvi bookvol9.log bookvol9.ps \
+                  bookvol9.idx bookvol9.tex bookvol9.pamphlet ; \
+         fi )
+
+@
+\section{Volume 10: Axiom Algebra}
+This ia multi-volumne set covering the algebra.
+<<*>>=
+${PDF}/bookvol10.pdf: ${IN}/bookvol10.pamphlet ${PDF}/axiom.sty
+       @echo 10 making ${PDF}/bookvol10.pdf from ${IN}/bookvol10.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol10.pamphlet ${PDF} ; \
+         ${WEAVE} -delay bookvol10.pamphlet >bookvol10.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol10.tex ; \
+           ${LATEX} bookvol10.tex >/dev/null ; \
+           ${DVIPS} bookvol10.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol10.ps >/dev/null ; \
+           ${RM} bookvol10.aux bookvol10.dvi bookvol10.log bookvol10.ps \
+                  bookvol10.idx bookvol10.tex bookvol10.pamphlet ; \
+         else \
+           ${LATEX} bookvol10.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol10.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol10.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol10.ps >${TMP}/trace  ; \
+           ${RM} bookvol10.aux bookvol10.dvi bookvol10.log bookvol10.ps \
+                  bookvol10.idx bookvol10.tex bookvol10.pamphlet ; \
+         fi )
+
+@
+\section{Volume 11: Axiom Browser}
+This is the source and explanation of the new Firefox browser front end.
+<<*>>=
+${PDF}/bookvol11.pdf: ${IN}/bookvol11.pamphlet ${PDF}/axiom.sty
+       @echo 11 making ${PDF}/bookvol11.pdf from ${IN}/bookvol11.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol11.pamphlet ${PDF} ; \
+         ${WEAVE} -delay bookvol11.pamphlet >bookvol11.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol11.tex ; \
+           ${LATEX} bookvol11.tex >/dev/null ; \
+           ${DVIPS} bookvol11.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol11.ps >/dev/null ; \
+           ${RM} bookvol11.aux bookvol11.dvi bookvol11.log bookvol11.ps \
+                  bookvol11.idx bookvol11.tex bookvol11.pamphlet ; \
+         else \
+           ${LATEX} bookvol11.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol11.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol11.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol11.ps >${TMP}/trace  ; \
+           ${RM} bookvol11.aux bookvol11.dvi bookvol11.log bookvol11.ps \
+                  bookvol11.idx bookvol11.tex bookvol11.pamphlet ; \
+         fi )
+
+@
+\section{Volume 12: Axiom Crystal}
+This is the design documents for the crystal interface.
+<<*>>=
+${PDF}/bookvol12.pdf: ${IN}/bookvol12.pamphlet ${PDF}/axiom.sty
+       @echo 12 making ${PDF}/bookvol12.pdf from ${IN}/bookvol12.pamphlet
+       @(cd ${PDF} ; \
+         cp ${IN}/bookvol12.pamphlet ${PDF} ; \
+         ${WEAVE} -delay bookvol12.pamphlet >bookvol12.tex ; \
+         if [ -z "${NOISE}" ] ; then \
+           ${LATEX} bookvol12.tex ; \
+           ${LATEX} bookvol12.tex >/dev/null ; \
+           ${DVIPS} bookvol12.dvi 2>/dev/null ; \
+           ${PS2PDF} bookvol12.ps >/dev/null ; \
+           ${RM} bookvol12.aux bookvol12.dvi bookvol12.log bookvol12.ps \
+                  bookvol12.idx bookvol12.tex bookvol12.pamphlet ; \
+         else \
+           ${LATEX} bookvol12.tex >${TMP}/trace ; \
+           echo ...first latex complete ; \
+           ${LATEX} bookvol12.tex >${TMP}/trace ; \
+           ${DVIPS} bookvol12.dvi 2>${TMP}/trace  ; \
+           ${PS2PDF} bookvol12.ps >${TMP}/trace  ; \
+           ${RM} bookvol12.aux bookvol12.dvi bookvol12.log bookvol12.ps \
+                  bookvol12.idx bookvol12.tex bookvol12.pamphlet ; \
+         fi )
+
+@
+\section{Combined Table of Contents}
+This is the table of contents from the existing volumes combined into
+one document for easy reference.
+<<*>>=
+${PDF}/toc.pdf: ${BOOKS}
+       @echo 13 making ${PDF}/toc.pdf
+       @(cd ${PDF} ; \
+       echo "\\documentclass{book}" >toc.tex ; \
+       echo "\\begin{document}" >>toc.tex ; \
+       echo "{\\bf Volume ~ 0}: Axiom {\\sl Jenks and Sutor}\\\\" >toc.toc ; \
+       echo "{\\bf Volume ~ 1}: Axiom {\\sl Tutorial}\\\\" >>toc.toc ; \
+       echo "{\\bf Volume ~ 2}: Axiom {\\sl Users Guide}\\\\" >>toc.toc ; \
+       echo \
+         "{\\bf Volume ~ 3}: Axiom {\\sl Programmers Guide}\\\\" >>toc.toc ; \
+       echo \
+         "{\\bf Volume ~ 4}: Axiom {\\sl Developers Guide}\\\\" >>toc.toc ; \
+       echo "{\\bf Volume ~ 5}: Axiom {\\sl Interpreter}\\\\" >>toc.toc ; \
+       echo "{\\bf Volume ~ 6}: Axiom {\\sl Command}\\\\" >>toc.toc ; \
+       echo "{\\bf Volume ~ 7}: Axiom {\\sl Hyperdoc}\\\\" >>toc.toc ; \
+       echo "{\\bf Volume ~ 8}: Axiom {\\sl Graphics}\\\\" >>toc.toc ; \
+       echo "{\\bf Volume ~ 9}: Axiom {\\sl Compiler}\\\\" >>toc.toc ; \
+       echo "{\\bf Volume 10}: Axiom {\\sl Algebra}\\\\" >>toc.toc ; \
+       echo "{\\bf Volume 11}: Axiom {\\sl Browser}\\\\" >>toc.toc ; \
+       echo "{\\bf Volume 12}: Axiom {\\sl Crystal}\\\\" >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\tableofcontents" >>toc.tex ; \
+       echo "\\end{document}" >>toc.tex ; \
+       echo "\\section*{Volume 0: Axiom Jenks and Sutor}" >>toc.toc ; \
+       cat bookvol0.toc >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\section*{Volume 1: Axiom Tutorial}" >>toc.toc ; \
+       cat bookvol1.toc >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\section*{Volume 2: Axiom Users Guide}" >>toc.toc ; \
+       cat bookvol2.toc >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\section*{Volume 3: Axiom Programmers Guide}" >>toc.toc ; \
+       cat bookvol3.toc >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\section*{Volume 4: Axiom Developers Guide}" >>toc.toc ; \
+       cat bookvol4.toc >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\section*{Volume 5: Axiom Interpreter}" >>toc.toc ; \
+       cat bookvol5.toc >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\section*{Volume 6: Axiom Command}" >>toc.toc ; \
+       cat bookvol6.toc >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\section*{Volume 7: Axiom Hyperdoc}" >>toc.toc ; \
+       cat bookvol7.toc >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\section*{Volume 8: Axiom Graphics}" >>toc.toc ; \
+       cat bookvol8.toc >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\section*{Volume 9: Axiom Compiler}" >>toc.toc ; \
+       cat bookvol9.toc >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\section*{Volume 10: Axiom Algebra}" >>toc.toc ; \
+       cat bookvol10.toc >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\section*{Volume 11: Axiom Browser}" >>toc.toc ; \
+       cat bookvol11.toc >>toc.toc ; \
+       echo "\\newpage" >>toc.toc ; \
+       echo "\\section*{Volume 12: Axiom Crystal}" >>toc.toc ; \
+       cat bookvol12.toc >>toc.toc ; \
+       if [ -z "${NOISE}" ] ; then \
+         ${LATEX} toc.tex ; \
+         ${DVIPS} toc.dvi 2>/dev/null ; \
+         ${PS2PDF} toc.ps >/dev/null ; \
+         ${RM} -f *.toc toc.aux toc.dvi toc.log toc.ps toc.tex toc.toc ; \
+       else \
+         ${LATEX} toc.tex >${TMP}/trace ; \
+         ${DVIPS} toc.dvi 2>${TMP}/trace ; \
+         ${PS2PDF} toc.ps >${TMP}/trace ; \
+         ${RM} -f *.toc toc.aux toc.dvi toc.log toc.ps toc.tex toc.toc ; \
+       fi )
+
+${PDF}/axiom.sty: ${SRC}/scripts/tex/axiom.sty
+       @echo 14 making ${PDF}/axiom.sty from ${SRC}/scripts/tex/axiom.sty
+       @cp ${SRC}/scripts/tex/axiom.sty ${PDF}/axiom.sty
+
+@
+\eject
+\begin{thebibliography}{99}
+\bibitem{1} CMUCL {\bf http://www.cons.org/cmucl}
+\bibitem{2} GCL {\bf http://savannah.gnu.org/projects/gcl}
+\bibitem{3} Codemist Ltd, ``Alta'', Horsecombe Vale Combs Down
+Bath BA2 5QR UK Tel. +44-1225-837430 
+{\bf http://www.codemist.co.uk}
+\bibitem{4} \$SPAD/zips/noweb-2.10a.tgz, the noweb source tree
+\bibitem{5} \$SPAD/zips/advi-1.2.0.tar.gz, the advi source tree
+\end{thebibliography}
+\end{document}
+
diff --git a/books/axiom.sty b/books/axiom.sty
deleted file mode 100755
index 3581b97..0000000
--- a/books/axiom.sty
+++ /dev/null
@@ -1,1026 +0,0 @@
-% axiom.sty -- LaTeX support for Axiom
-% DON'T edit this file!  Use src/doc/axiom.sty.pamphlet instead.
-
-\usepackage{alltt}
-
-\newenvironment{chunk}[1]{%   we need the chunkname as an argument
-\noindent%                    make sure we are in column 1
-{\small $<<${#1}$>>=$}%       <<some random string>>=
-\begin{alltt}%                use the verbatim
-\small}%                      with a small font
-{\end{alltt}%                 the end{chunk} ends the verbatim
-\par{}%                       we add a newline
-\noindent{}%                  start in column 1
address@hidden                            put an @
-\par%                         and a newline
-\normalsize}%                 and return to the rest of the document
-
-{\obeyspaces\AtBeginDocument{\global\let =\ }} % from texbook, p 381
address@hidden@gobble}
address@hidden
-  \def\nwmargintag##1{\leavevmode\llap{##1\kern\nwmarginglue\kern\codemargin}}}
address@hidden
-  
\def\nwmargintag##1{\leavevmode\kern-\codemargin\nwthemargintag{##1}\kern\codemargin}}
-\def\nwthemargintag#1{\llap{#1\kern\nwmarginglue}}
address@hidden
-\newdimen\nwmarginglue
-\nwmarginglue=0.3in
-\def\nwtagstyle{\footnotesize\Rm}
-% make \hsize in code sufficient for 88 columns
-\setbox0=\hbox{\tt m}
-\newdimen\codehsize
-\codehsize=91\wd0 % 88 columns wasn't enough; I don't know why
-\newdimen\codemargin
-\codemargin=0pt
-\newdimen\nwdefspace
-\nwdefspace=\codehsize
-% need to use \textwidth in {\LaTeX} to handle styles with
-% non-standard margins (David Bruce).  Don't know why we sometimes
-% wanted \hsize.  27 August 1997.
-%% \advance\nwdefspace by -\hsize\relax
-\ifx\textwidth\undefined
-  \advance\nwdefspace by -\hsize\relax
-\else
-  \advance\nwdefspace by -\textwidth\relax
-\fi
-\chardef\other=12
-\def\setupcode{%
-  \chardef\\=`\\
-  \chardef\{=`\{
-  \chardef\}=`\}
-  \catcode`\$=\other
-  \catcode`\&=\other
-  \catcode`\#=\other
-  \catcode`\%=\other
-  \catcode`\~=\other
-  \catcode`\_=\other
-  \catcode`\^=\other
-  \catcode`\"=\other    % fixes problem with german.sty
-  \obeyspaces\Tt
-}
-\let\nwlbrace=\{
-\let\nwrbrace=\}
-\def\nwendquote{\relax\ifhmode\spacefactor=1000 \fi}
-{\catcode`\^^M=\active % make CR an active character
-  \gdef\newlines{\catcode`\^^M=\active % make CR an active character
-         \def^^M{\par\startline}}%
-  \gdef\eatline#1^^M{\relax}%
-}
-%%% DON'T   \gdef^^M{\par\startline}}% in case ^^M appears in a \write
-\def\startline{\noindent\hskip\parindent\ignorespaces}
-\def\nwnewline{\ifvmode\else\hfil\break\leavevmode\hbox{}\fi}
-\def\setupmodname{%
-  \catcode`\$=3
-  \catcode`\&=4
-  \catcode`\#=6
-  \catcode`\%=14
-  \catcode`\~=13
-  \catcode`\_=8
-  \catcode`\^=7
-  \catcode`\ =10
-  \catcode`\^^M=5
-  \let\{\nwlbrace
-  \let\}\nwrbrace
-  % bad news --- don't know what catcode to give "
-  \Rm}
-\def\LA{\begingroup\maybehbox\bgroup\setupmodname\It$\langle$}
-\def\RA{\/$\rangle$\egroup\endgroup}
-\def\code{\leavevmode\begingroup\setupcode\newlines}
-\def\edoc{\endgroup}
-\let\maybehbox\relax
-\newbox\equivbox
-\setbox\equivbox=\hbox{$\equiv$}
-\newbox\plusequivbox
-\setbox\plusequivbox=\hbox{$\mathord{+}\mathord{\equiv}$}
-% \moddef can't have an argument because there might be \code...\edoc
-\def\moddef{\leavevmode\kern-\codemargin\LA}
-\def\endmoddef{\RA\ifmmode\equiv\else\unhcopy\equivbox\fi
-               \nobreak\hfill\nobreak}
-\def\plusendmoddef{\RA\ifmmode\mathord{+}\mathord{\equiv}\else\unhcopy\plusequivbox\fi
-               \nobreak\hfill\nobreak}
-\def\chunklist{%
-\errhelp{I changed \chunklist to \nowebchunks.  
-I'll try to avoid such incompatible changes in the future.}%
-\errmessage{Use \string\nowebchunks\space instead of \string\chunklist}}
-\def\nowebchunks{\message{<Warning: You need noweave -x to use 
\string\nowebchunks>}}
-\def\nowebindex{\message{<Warning: You need noweave -index to use 
\string\nowebindex>}}
-% here is support for the new-style (capitalized) font-changing commands
-% thanks to Dave Love
-\ifx\documentstyle\undefined
-  \let\Rm=\rm \let\It=\it \let\Tt=\tt       % plain
-\else\ifx\selectfont\undefined
-  \let\Rm=\rm \let\It=\it \let\Tt=\tt       % LaTeX OFSS
-\else                                       % LaTeX NFSS
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-\fi\fi
address@hidden address@hidden \fi
-\def\noweboptions#1{%
-  address@hidden
-  address@hidden@nwoption:address@hidden
-    address@hidden@address@hidden
-        address@hidden is no such noweb option as 
'address@hidden'address@hidden
-        \csname address@hidden@nwoption\endcsname}}}
-\codemargin=10pt
-\advance\codehsize by \codemargin       % make room for indentation of code
-\advance\nwdefspace by \codemargin      % and fix adjustment for def/use
-\def\setcodemargin#1{%
-  \advance\codehsize by -\codemargin       % make room for indentation of code
-  \advance\nwdefspace by -\codemargin   % and fix adjustment for def/use
-  \codemargin=#1
-  \advance\codehsize by \codemargin       % make room for indentation of code
-  \advance\nwdefspace by \codemargin    % and fix adjustment for
-                                        % def/use
-}
address@hidden
-  address@hidden
-  address@hidden                 % Values for two-sided printing:
-     \advance\evensidemargin by \dimen@
-  \else                       % Values for one-sided printing:
-     \advance\evensidemargin by \dimen@
-     \advance\oddsidemargin by \dimen@
-  \fi
-%  \advance \marginparwidth -\dimen@
-}
address@hidden@empty
-\def\nwbegincode#1{%
-  \begingroup
-    \topsep \nwcodetopsep
-    address@hidden address@hidden
-    address@hidden address@hidden
-  address@hidden }
-\def\nwendcode{\endtrivlist \endgroup \filbreak} % keeps code on 1 page
-
-\newenvironment{webcode}{%
-  address@hidden
-}{%
-  \endtrivlist}
address@hidden
-    \trivlist \item[]%
-    address@hidden \advance\leftskip\codemargin
-    \rightskip\hsize \advance\rightskip -\codehsize
-    \parskip\z@ \parindent\z@ address@hidden
-  \linewidth\codehsize
-    \@@par
-    \def\par{\leavevmode\null \@@par \penalty\nwcodepenalty}%
-    \obeylines
-    address@hidden   address@hidden@list\undefined\else
-                 address@hidden address@hidden@list address@hidden
-               \fi
-    \setupcode \frenchspacing address@hidden
-  \nowebsize \setupcode
-  \let\maybehbox\mbox }
-  \newskip\nwcodetopsep \nwcodetopsep = 3pt plus 1.2pt minus 1pt
-  \let\nowebsize=\normalsize
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-\newcount\nwcodepenalty  address@hidden
address@hidden }
-\def\nwbegindocs#1{\ifvmode\noindent\fi}
-\let\nwenddocs=\relax
-\let\nwdocspar=\filbreak
-\raggedbottom
address@hidden
-\let\edoc=\endgroup
address@hidden@textwidth
address@hidden
-  address@hidden@textwidth=\textwidth
-  address@hidden@gobbletwo
-  address@hidden@evenfoot{}%       No feet.
-  address@hidden         % If two-sided printing.
-    address@hidden to address@hidden@textwidth{%
-           \Rm \thepage\qquad{\Tt\leftmark}\hfil\today}}%        Left heading.
-    address@hidden to address@hidden@textwidth{%
-           \Rm \today\hfil{\Tt\leftmark}\qquad\thepage}}% Right heading.
-  \else               % If one-sided printing.
-    address@hidden to address@hidden@textwidth{%
-           \Rm \today\hfil{\Tt\leftmark}\qquad\thepage}}% Right heading.
-    address@hidden@oddhead
-  \fi
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-                \catcode`\{=1 \catcode`\}=2 address@hidden
-  address@hidden@address@hidden
-}
address@hidden \markboth{#1}{#1}}
address@hidden
-\def\nwcodecomment#1{\@@par\penalty\nwcodepenalty
-    address@hidden
-      address@hidden
-    \fi%
-    \hspace{-\codemargin}{%
-        \rightskip=0pt plus1in
-        \interlinepenalty\nwcodepenalty
-        \let\\\relax\footnotesize\Rm #1\@@par\penalty\nwcodepenalty}}
address@hidden@nwlangdepdef\ \nwpageprep\ address@hidden
address@hidden@nwlangdepcud\ \nwpageprep\ address@hidden
address@hidden@nwlangdeprtc.}}
address@hidden {\Tt address@hidden
address@hidden
-\providecommand{\nwprevdefptr}[1]{%
-  \mbox{$\mathord{\triangleleft}\,\mathord{\mbox{\subpageref{#1}}}$}}
-\providecommand{\nwnextdefptr}[1]{%
-  \mbox{$\mathord{\mbox{\subpageref{#1}}}\,\mathord{\triangleright}$}}
-
address@hidden
-  {\nwtagstyle
-  \ifx\relax#1\else ~~\nwprevdefptr{#1}\fi
-  \ifx\relax#2\else ~~\nwnextdefptr{#2}\fi}}
address@hidden(address@hidden)}}
address@hidden 1.5em plus 1fill\nobreak}
address@hidden \nwdefspace minus\nwdefspace\nobreak}
address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  \let\nwstartdeflinemarkup\relax
-  \let\nwenddeflinemarkup\relax
-}
address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-}
address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  \let\nwstartdeflinemarkup\relax
-  \let\nwenddeflinemarkup\relax
-}
address@hidden % to hell with backward compatibility!
-\newskip\nwcodecommentsep \nwcodecommentsep=3pt plus 1pt minus 1pt
address@hidden@firstnwcodecommenttrue
address@hidden@nwhipage  % range lo..hi-1
address@hidden              % subpage of lo
address@hidden              % subpage of hi
address@hidden subpage page xref-tag
-  address@hidden address@hidden
-  address@hidden
-  address@hidden by address@hidden
-  address@hidden@address@hidden by address@hidden }
address@hidden subpage page xref-tag
-  address@hidden 
-    address@hidden by address@hidden 
-    address@hidden by address@hidden
-    address@hidden 
-    address@hidden
-  \ifnum#2<address@hidden address@hidden by address@hidden
-                      address@hidden@nwlopage
-                           address@hidden
-                                             address@hidden@nwlopage}}%
-                                              address@hidden
-                      \else
-                        address@hidden@nwhipage \advance\count@ by 
address@hidden
-                        address@hidden@nwlopage % consecutive pages
-                            address@hidden
-                                             address@hidden@nwlopage}}%
-                                              address@hidden
-                                          \noexpand\noexpand\noexpand\\%
-                                             address@hidden@nwhipage}}
-                                              address@hidden
-                        \else address@hidden<110 address@hidden@address@hidden
-                                address@hidden@nwlopage \divide\count@ by 100 
\multiply\count@ by 100
-                                address@hidden@nwlopage 
address@hidden@address@hidden
-                                  address@hidden@nwlopage \divide\count@ by 100
-                                  address@hidden@nwhipage address@hidden by 100
-                                  address@hidden@nwpagetemp %  lo--least 2 
digits of hi
-                                    address@hidden by 100
-                                    \advance address@hidden by address@hidden
-                                    address@hidden@address@hidden
-                                  \else address@hidden@address@hidden
-                                  \fi
-                                \fi
-                              \fi%
-                        \fi
-                      \fi%
-                      
address@hidden@address@hidden@address@hidden@nwfirstpage{#1}{#2}{#3}\else
-  \ifnum#2>address@hidden address@hidden by address@hidden
-                      address@hidden@nwlopage
-                           address@hidden
-                                             address@hidden@nwlopage}}%
-                                              address@hidden
-                      \else
-                        address@hidden@nwhipage \advance\count@ by 
address@hidden
-                        address@hidden@nwlopage % consecutive pages
-                            address@hidden
-                                             address@hidden@nwlopage}}%
-                                              address@hidden
-                                          \noexpand\noexpand\noexpand\\%
-                                             address@hidden@nwhipage}}
-                                              address@hidden
-                        \else address@hidden<110 address@hidden@address@hidden
-                                address@hidden@nwlopage \divide\count@ by 100 
\multiply\count@ by 100
-                                address@hidden@nwlopage 
address@hidden@address@hidden
-                                  address@hidden@nwlopage \divide\count@ by 100
-                                  address@hidden@nwhipage address@hidden by 100
-                                  address@hidden@nwpagetemp %  lo--least 2 
digits of hi
-                                    address@hidden by 100
-                                    \advance address@hidden by address@hidden
-                                    address@hidden@address@hidden
-                                  \else address@hidden@address@hidden
-                                  \fi
-                                \fi
-                              \fi%
-                        \fi
-                      \fi%
-                      
address@hidden@address@hidden@address@hidden@nwfirstpage{#1}{#2}{#3}\else
-    address@hidden address@hidden
-  \fi\fi\fi
-  }
address@hidden
address@hidden
address@hidden label
-  address@hidden@address@hidden `#1' on page \thepage \space undefined}%
-                      address@hidden@pages{\\{\bf ??}}}{%
-    address@hidden@address@hidden
address@hidden label
-  address@hidden@address@hidden `#1' on page \thepage \space undefined}%
-                      address@hidden@pages{\\{\bf ??}}}{%
-    address@hidden@address@hidden
address@hidden  list of labels
-  address@hidden@nwpagecount=0
-  address@hidden@nwnextpagel}#1%
-  address@hidden by address@hidden
-  address@hidden@nwlopage
-       address@hidden
-                         address@hidden@nwlopage}}%
-                          address@hidden
-  \else
-    address@hidden@nwhipage \advance\count@ by address@hidden
-    address@hidden@nwlopage % consecutive pages
-        address@hidden
-                         address@hidden@nwlopage}}%
-                          address@hidden
-                      \noexpand\noexpand\noexpand\\%
-                         address@hidden@nwhipage}}
-                          address@hidden
-    \else address@hidden<110 address@hidden@address@hidden
-            address@hidden@nwlopage \divide\count@ by 100 \multiply\count@ by 
100
-            address@hidden@nwlopage address@hidden@address@hidden
-              address@hidden@nwlopage \divide\count@ by 100
-              address@hidden@nwhipage address@hidden by 100
-              address@hidden@nwpagetemp %  lo--least 2 digits of hi
-                address@hidden by 100
-                \advance address@hidden by address@hidden
-                address@hidden@address@hidden
-              \else address@hidden@address@hidden
-              \fi
-            \fi
-          \fi%
-    \fi
-  \fi%
-  address@hidden@address@hidden@address@hidden@nwhyperpagenum##1}%
-  address@hidden \nwpageword \else address@hidden
address@hidden
-
address@hidden  list of labels -- doesn't include word `pages', commas, or `and'
-  address@hidden@nwpagecount=0
-  address@hidden@nwnextpagel}#1%
-  address@hidden by address@hidden
-  address@hidden@nwlopage
-       address@hidden
-                         address@hidden@nwlopage}}%
-                          address@hidden
-  \else
-    address@hidden@nwhipage \advance\count@ by address@hidden
-    address@hidden@nwlopage % consecutive pages
-        address@hidden
-                         address@hidden@nwlopage}}%
-                          address@hidden
-                      \noexpand\noexpand\noexpand\\%
-                         address@hidden@nwhipage}}
-                          address@hidden
-    \else address@hidden<110 address@hidden@address@hidden
-            address@hidden@nwlopage \divide\count@ by 100 \multiply\count@ by 
100
-            address@hidden@nwlopage address@hidden@address@hidden
-              address@hidden@nwlopage \divide\count@ by 100
-              address@hidden@nwhipage address@hidden by 100
-              address@hidden@nwpagetemp %  lo--least 2 digits of hi
-                address@hidden by 100
-                \advance address@hidden by address@hidden
-                address@hidden@address@hidden
-              \else address@hidden@address@hidden
-              \fi
-            \fi
-          \fi%
-    \fi
-  \fi%
-  address@hidden@address@hidden@address@hidden
-  address@hidden@address@hidden
address@hidden@nwhyperpagenum#1}
-\def\subpages#1{% list of {{subpage}{page}}
-  address@hidden@nwpagecount=0
-  address@hidden@address@hidden
-            address@hidden@address@hidden
-  address@hidden by address@hidden
-  address@hidden@nwlopage
-       address@hidden
-                         address@hidden@nwlopage}}%
-                          address@hidden
-  \else
-    address@hidden@nwhipage \advance\count@ by address@hidden
-    address@hidden@nwlopage % consecutive pages
-        address@hidden
-                         address@hidden@nwlopage}}%
-                          address@hidden
-                      \noexpand\noexpand\noexpand\\%
-                         address@hidden@nwhipage}}
-                          address@hidden
-    \else address@hidden<110 address@hidden@address@hidden
-            address@hidden@nwlopage \divide\count@ by 100 \multiply\count@ by 
100
-            address@hidden@nwlopage address@hidden@address@hidden
-              address@hidden@nwlopage \divide\count@ by 100
-              address@hidden@nwhipage address@hidden by 100
-              address@hidden@nwpagetemp %  lo--least 2 digits of hi
-                address@hidden by 100
-                \advance address@hidden by address@hidden
-                address@hidden@address@hidden
-              \else address@hidden@address@hidden
-              \fi
-            \fi
-          \fi%
-    \fi
-  \fi%
-  address@hidden@address@hidden@address@hidden@firstoftwo##1}%
-  address@hidden \nwpageword \else address@hidden
address@hidden@nwhipage by address@hidden
-                 address@hidden@nwlopage
-                      address@hidden
-                                        address@hidden@nwlopage}}%
-                                         address@hidden
-                 \else
-                   address@hidden@nwhipage \advance\count@ by address@hidden
-                   address@hidden@nwlopage % consecutive pages
-                       address@hidden
-                                        address@hidden@nwlopage}}%
-                                         address@hidden
-                                     \noexpand\noexpand\noexpand\\%
-                                        address@hidden@nwhipage}}
-                                         address@hidden
-                   \else address@hidden<110 address@hidden@address@hidden
-                           address@hidden@nwlopage \divide\count@ by 100 
\multiply\count@ by 100
-                           address@hidden@nwlopage 
address@hidden@address@hidden
-                             address@hidden@nwlopage \divide\count@ by 100
-                             address@hidden@nwhipage address@hidden by 100
-                             address@hidden@nwpagetemp %  lo--least 2 digits 
of hi
-                               address@hidden by 100
-                               \advance address@hidden by address@hidden
-                               address@hidden@address@hidden
-                             \else address@hidden@address@hidden
-                             \fi
-                           \fi
-                         \fi%
-                   \fi
-                 \fi%
-                 address@hidden@address@hidden@address@hidden
address@hidden  % chunk, was page
address@hidden  % chunk, was page
address@hidden     % in, was on
address@hidden what to do, name of ref
-  address@hidden@nericref\csname address@hidden
address@hidden@nericref[3]{% control sequence, what to do, name
-  \ifx#1\relax
-    \ref{#3}% trigger the standard `undefined ref' mechanisms
-  \else
-    \expandafter#2#1.\\%
-  \fi}
address@hidden
address@hidden
address@hidden
-\providecommand{\subpageref}[1]{%
-  address@hidden@subpageref{#1}}}
address@hidden
-  address@hidden
-\providecommand{\subpagepair}[1]{%  % produces {subpage}{page}
-  address@hidden@#1}%
-    {{0}{0}}%
-    address@hidden@subpagepair{#1}}}
address@hidden
-  address@hidden
-\providecommand{\sublabel}[1]{%
-  address@hidden
-  \nwblindhyperanchor{#1}%
-  address@hidden {\let\thepage\relax
-   \def\protect{\noexpand\noexpand\noexpand}%
-   address@hidden@auxout{\string
-      \newsublabel{#1}{{}{\thepage}}}}%
-   address@hidden
-   address@hidden address@hidden
-\providecommand{\nosublabel}[1]{%
-  address@hidden@filesw {\let\thepage\relax
-   \def\protect{\noexpand\noexpand\noexpand}%
-   address@hidden@auxout{\string
-      \newlabel{#1}{{0}{\thepage}}}}%
-   address@hidden
-   address@hidden address@hidden
-\providecommand\newsublabel{%
-  address@hidden
-  address@hidden
-  address@hidden
address@hidden
-  address@hidden@address@hidden
-  address@hidden@page\else
-    address@hidden@
-  \fi
-  address@hidden@page}
-  address@hidden by address@hidden
-  address@hidden@
-    address@hidden@page}{}%
-  \fi
-  \pendingsublabel{#1}%
-  address@hidden
-    address@hidden@address@hidden
-  address@hidden
-  address@hidden
address@hidden -- won't work on first run
-  address@hidden
-     address@hidden
-     address@hidden
address@hidden 
-  address@hidden@secondoffive}%
-     address@hidden
-     address@hidden
-\providecommand{\nextchunklabel}[1]{%
-  \nwblindhyperanchor{#1}%   % looks slightly bogus --- nr
-  address@hidden@filesw {\let\thepage\relax
-      address@hidden@auxout{\string\pendingsublabel{#1}}}%
-      address@hidden
-   address@hidden address@hidden
-\providecommand\pendingsublabel[1]{%
-  address@hidden@tempa}%
-  address@hidden@address@hidden
address@hidden
address@hidden
address@hidden
address@hidden address@hidden
address@hidden
address@hidden address@hidden
address@hidden@address@hidden
address@hidden@numsubpagenum}
address@hidden@alphasubpagenum}
address@hidden
address@hidden@n
address@hidden@address@hidden
address@hidden@address@hidden
address@hidden
-  address@hidden@address@hidden@n by-1
-  address@hidden@bound=26
-  address@hidden@n<address@hidden@bound\else
-     address@hidden@n by address@hidden@bound
-     address@hidden@bound by 26
-  \repeat
-  address@hidden@bound>1
-    address@hidden@bound by 26
-    address@hidden@address@hidden@address@hidden@d by address@hidden@bound
-    % d := d * bound ; n -:= d; d := d / bound --- saves a temporary
-    address@hidden@d by address@hidden@bound
-    address@hidden@n by address@hidden@d
-    address@hidden@d by address@hidden@bound
-    address@hidden@d by 1 address@hidden@address@hidden
-  \repeat
-}}
address@hidden
address@hidden@ne
-\providecommand{\weblabel}[1]{%
-  address@hidden
-  \nwblindhyperanchor{#1}%
-  address@hidden {\let\thepage\relax
-   \def\protect{\noexpand\noexpand\noexpand}%
-   address@hidden@auxout{\string
-      address@hidden
-   address@hidden
-   address@hidden by address@hidden
-   address@hidden address@hidden
address@hidden
-  \let\sublabel=\weblabel
-  \def\nwpageword{chunk}\def\nwpagesword{chunks}%
-  \def\nwpageprep{in}}
-% \nwindexdefn{printable name}{identifying label}{label of chunk}
-% \nwindexuse{printable name}{identifying label}{label of chunk}
-
address@hidden
address@hidden
-
address@hidden {marker}{id label}{subpage label}
-   address@hidden@filesw {\let\nwixd\relax\let\nwixu\relax
-   \def\protect{\noexpand\noexpand\noexpand}%
-   address@hidden@auxout{\string\nwixadd{#1}{#2}{#3}}}%
-   address@hidden
-   address@hidden address@hidden
-% \nwixadd{marker}{idlabel}{subpage label}
-\def\nwixadd#1#2#3{%
-  address@hidden@#2}%
-    address@hidden@#2}{#1{#3}}}%
-    address@hidden address@hidden
address@hidden
address@hidden
address@hidden
address@hidden
-  address@hidden
-  address@hidden
-}
address@hidden
-  address@hidden
-  address@hidden
-}
address@hidden
-  address@hidden
-  address@hidden
-}
address@hidden
-  address@hidden
-  address@hidden
-}
address@hidden
-  address@hidden
-}
address@hidden
-  address@hidden
-}
address@hidden
-  address@hidden
-}
address@hidden
-  address@hidden
-}
address@hidden
address@hidden
-\def\commafy#1{%
-  address@hidden@address@hidden
-   address@hidden@each=\\%
-   address@hidden@address@hidden@address@hidden
-     \def\\{\def\\{ address@hidden address@hidden@address@hidden@each}\else
-     \def\\{\def\\{, %
-                   address@hidden by address@hidden
-                   address@hidden address@hidden@address@hidden@address@hidden
-   #1}}
address@hidden {list}{\marker{element}}
-  address@hidden@tempa}%
-   \xdef#1{\the\toks0 \the\toks2 }}}
address@hidden {label}
-  address@hidden@address@hidden
address@hidden {label}
-  address@hidden@address@hidden
address@hidden
address@hidden {list with \\}
-  address@hidden
-   \def\\##1{\advance\count@ by address@hidden }%
-   address@hidden@ }}
address@hidden@address@hidden
address@hidden@address@hidden
address@hidden@defs#1{% index pair
-  {{\Tt address@hidden@nil}%
-  address@hidden@address@hidden
-\def\nwidentuses#1{% list of index pairs
-  address@hidden address@hidden@defs\commafy{#1}.}}
address@hidden list of index pairs
-  address@hidden
-   address@hidden@address@hidden@ address@hidden
-   address@hidden@ }}
address@hidden@uses#1#2{% {ident}{label}
-  address@hidden@counter>0
-    {\advance\leftskip by \codemargin
-     \nwcodecomment{{\Tt #1}, address@hidden \nwpageprep\ 
address@hidden@uses{#2}}.}}%
-  \else
-    address@hidden
-      {\advance\leftskip by \codemargin \nwcodecomment{{\Tt #1}, address@hidden
-    \fi
-  \fi}
-\def\nwidentdefs#1{% list of index pairs
-  address@hidden@address@hidden
-  address@hidden>0
-    address@hidden:}%
-    address@hidden@uses ##1}#1}%
-  \fi}
address@hidden@hideunuseddefsfalse
address@hidden@hideunuseddefstrue}
address@hidden
-  address@hidden
-  address@hidden
address@hidden {list with \nwixd, \nwixu}
-  address@hidden, }
-  address@hidden
-  address@hidden
-
address@hidden
-   {\indent {\Tt #1}: address@hidden@address@hidden
-
-\newenvironment{thenowebindex}{\parindent=-10pt \parskip=\z@ 
-        \advance\leftskip by 10pt 
-        \advance\rightskip by 0pt address@hidden
-    address@hidden
-\def\nowebindex{%
-  address@hidden@i}%
-     address@hidden \string\nowebindex\space is empty}}%
-     address@hidden@i}\end{thenowebindex}}}
address@hidden
-  address@hidden@gobble
-   address@hidden@indexline##1}%
-   address@hidden@##1}{##2}}%
-   address@hidden
-\def\nwixlogsorted#1#2{% list data
-   address@hidden@filesw 
-     address@hidden
-   address@hidden address@hidden
-\def\nwixadds#1#2{%
-  address@hidden@#1}%
-    address@hidden@#1}{\\{#2}}}%
-    address@hidden address@hidden
address@hidden
address@hidden
-  address@hidden % already called
-  \else
-    \let\nwixaddsx=\nwixadds address@hidden
-    address@hidden
-    address@hidden
-  \fi}
-\def\nowebchunks{%
-  address@hidden@c}%
-     address@hidden are no \string\nowebchunks}}%
-     address@hidden@c}\end{thenowebchunks}}}
address@hidden
-  address@hidden@gobble
-   address@hidden@onechunk##1}%
-   address@hidden@##1}{##2}}%
-   address@hidden
-    address@hidden@address@hidden(address@hidden)}}
address@hidden {list of labels with \nwixd, \nwixu}
-  address@hidden, }
-  address@hidden
-  address@hidden
address@hidden {name}{label of first definition}{list with \nwixd, \nwixu}
-  address@hidden@#2}{}{%
-    \indent\LA #1~{\nwtagstyle\subpageref{#2}}\RA 
-    address@hidden@chunkunderlinedefs#3}\fi\par}}
-\newenvironment{thenowebchunks}{\vskip3pt
-  address@hidden \advance\leftskip by 10pt
-  \advance\rightskip by 0pt plus10pt address@hidden
-  address@hidden
address@hidden
address@hidden
address@hidden@nwlongchunkstrue
address@hidden@address@hidden % naras
address@hidden@address@hidden % naras
address@hidden@address@hidden  % nr
address@hidden@address@hidden  % nr
address@hidden@address@hidden  % nr
address@hidden@address@hidden  % nr
-\providecommand\nwhyperreference{%
-  address@hidden
-    address@hidden
-       address@hidden
-       address@hidden@address@hidden
-    address@hidden@address@hidden
-  \nwhyperreference
-}
-
-\providecommand\nwblindhyperanchor{%
-  address@hidden
-    address@hidden
-       address@hidden
-       address@hidden@address@hidden
-    address@hidden@address@hidden
-  \nwblindhyperanchor
-}
-\providecommand\nwanchorto{%
-  address@hidden
-     \catcode`\{=1 \catcode`\}=2 address@hidden
address@hidden@address@hidden
address@hidden URL address@hidden
address@hidden
-\newif\ifhtml
-\htmlfalse
-\let\nwixident=\relax
-\def\nwbackslash{\char92}
-\def\nwlbrace{\char123}
-\def\nwrbrace{\char125}
address@hidden
-  address@hidden definition is continued}%
-  address@hidden code is used}%
-  address@hidden chunk (not used in this document)}%
-  address@hidden code is written to file}%
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden
-  address@hidden used}%
-  address@hidden
-  address@hidden defined}%
-}
address@hidden@english
address@hidden
-  address@hidden continuada em}%
-  % This definition is continued
-  address@hidden'odigo usado em}%
-  % This code is used
-  address@hidden de topo (sem uso no documento)}%
-  % Root chunk (not used in this document)
-  address@hidden c\'odigo foi escrito no ficheiro}%
-  % This code is written to file
-  address@hidden
-  % chunk
-  address@hidden
-  % chunks
-  address@hidden(s)}%
-  % in
-  address@hidden
-  % and
-  address@hidden
-  % Uses
-  address@hidden
-  % used
-  address@hidden usado}%
-  % never used
-  address@hidden
-  % Defines
-  address@hidden definido}%
-  % never defined
-}
address@hidden
-  address@hidden d\'efinition suit}%
-  % This definition is continued
-  address@hidden code est employ\'e}%
-  % This code is used
-  address@hidden racine (pas employ\'e dans ce document)}%
-  % Root chunk (not used in this document)
-  address@hidden code est \'ecrit aux fichier}%
-  % This code is written to file
-  address@hidden morceau}%
-  % chunk
-  address@hidden morceaux}%
-  % chunks
-  address@hidden
-  % in
-  address@hidden
-  % and
-  address@hidden emploie}%
-  % Uses
-  address@hidden'{e}}%
-  % used
-  address@hidden employ\'{e}}%
-  % never used
-  address@hidden d\'{e}fine}%
-  % Defines
-  % Cannot use the accent here: address@hidden d\'{e}fini}%
-  address@hidden defini}%
-  % never defined
-}
address@hidden@frenchb
address@hidden
-  address@hidden Definition wird fortgesetzt}%
-  % This definition is continued
-  address@hidden Code wird benutzt}%
-  % This code is used
-  address@hidden (nicht in diesem Dokument benutzt)}%
-  % Root chunk (not used in this document)
-  address@hidden Code schreibt man zum File}%
-  % This code is written to file
-  address@hidden
-  % chunk
-  address@hidden
-  % chunks
-  address@hidden
-  % in
-  address@hidden
-  % and
-  address@hidden
-  % Uses
-  address@hidden
-  % used
-  address@hidden benutzt}%
-  % never used
-  address@hidden
-  % Defines
-  address@hidden definiert}%
-  % never defined
-}
address@hidden@german
-\ifx\languagename\undefined % default is English
-  \noweboptions{english}
-\else
-  address@hidden@\languagename}
-     {\noweboptions{english}}
-     {\expandafter\noweboptions\expandafter{\languagename}}
-\fi
-% Final names for the system and its components were in doubt so
-% Language is used throughout the book to specify what the system is named.
-\providecommand{\Language}{AXIOM}
-
-% HyperName was used to specify the name of the browser
-\providecommand{\HyperName}{HyperDoc}
-
-% This is nothing more than inline math mode in Tex but has additional
-% meaning within the browser.
-\providecommand{\spad}[1]{${#1}$}
-
-% This is a way to say 8th, 100th, etc.
-% We use providecommand so it doesn't clash with amsmath package
-\providecommand{\eth}[1]{{#1}-th}
-
-% add the binom function for combfunc
-\providecommand{\binom}[2]{\left(\begin{array}{c}#1\\#2\end{array}\right)}
-
-% spadcommands are the actual text that you type at the axiom prompt
-\providecommand{\spadcommand}[1]%
-{\begin{flushleft}{\tt #1}\end{flushleft}\vskip .1cm }
-
-% spadgraph are the actual text that you type at the axiom prompt for draw
-\providecommand{\spadgraph}[1]%
-{\begin{flushleft}{\tt #1}\end{flushleft}\vskip .1cm }
-
-%% spadsig gives the standard -> notation for signatures
-\providecommand{\spadsig}[2]{{\sf #1 $\rightarrow$ #2}}
-
-% returnType is the type signature returned by the axiom interpreter
-\providecommand{\returnType}[1]%
-{\begin{flushright}{\tt #1}\end{flushright}\vskip .1cm}
-
-%%% Axiom commands are set off in a special boxed area. 
-%%% This is used to draw a line around that boxed area.
-\providecommand\boxed[2]{%
-\begin{center}
-\begin{tabular}{|c|}
-\hline
-\begin{minipage}{#1}
-\normalsize
-{#2}
-\end{minipage}\\
-\hline
-\end{tabular}
-\end{center}}
-
-% The book begins with some introductory material that is not really
-% listed as a chapter. This creates a header similar to \chapter.
-\providecommand{\pseudoChapter}[1]%
-{\vskip .5in \noindent {\Huge{\bf #1}}\vskip .5in}
-
-% The book begins with some introductory material that is not really
-% listed as a section. This creates a header similar to \section.
-\providecommand{\pseudoSection}[1]%
-{\vskip .25in \noindent {\large{\bf #1}}\vskip .25in}
-
-% spadofFrom records the operation in the index and the domain in the index
-\providecommand{\spadopFrom}[2]{\index{library!operations!#1 @\begingroup 
\string\tt{} #1 \endgroup}\index{#2}``{\tt #1}''}
-
-% spadfunFrom records the function name and domain in the index
-\providecommand{\spadfunFrom}[2]{{\bf #1}\index{#1 @\begingroup \string\bf{} 
#1 \endgroup}\index{#2}}
-
-% These are special markers within the text for Hypertex keywords
-% They have no particular meaning in the book form.
-\providecommand{\spadfun}[1]{{\it #1}}
-\providecommand{\spadgloss}[1]{{\it #1}}
-\providecommand{\spadkey}[1]{\index{#1 @\begingroup \string\tt{} #1 \endgroup}}
- 
-% spadtype records the domain in the index
-\providecommand{\spadtype}[1]{{\bf #1}\index{#1 @\begingroup \string\bf{} #1 
\endgroup}}
-
-% This is used to create a caption on an included image
address@hidden@figure}\caption{#1}}
-
-% This is the name of the ``glossy'' pages in the physical book.
-\providecommand{\Gallery}{\Language{} Images}
-
-% spadofFrom records the operation in the index and the domain in the index
-\providecommand{\spadopFrom}[2]{\index{library!operations!#1 @\begingroup 
\string\tt{} #1 \endgroup}\index{#2}``{\tt #1}''}
-
-%% typeset e.g. and i.e.
-\providecommand{\eg}{\emph{e.g.}}
-\providecommand{\ie}{\emph{i.e.}}
-
-%% Typeset in-line code.
-\providecommand{\Code}[1]{\texttt{#1}}
-
-%% Typeset a file name
-\providecommand{\File}[1]{{\itshape{#1}}}
-
-%% Typeset a tool name, e.g. Axiom
-\providecommand{\Tool}[1]{{\bfseries\sffamily{#1}}}
-\providecommand\AXIOM{\vskip\parindent\indent{\bf 
AXIOM}\vskip\parindent\noindent\ignorespaces}
-\providecommand\maxima{\vskip\parindent\noindent{\bf 
MAXIMA}\vskip\parindent\noindent\ignorespaces}
-\providecommand\yacas{\vskip\parindent\noindent{\bf 
YACAS}\vskip\parindent\noindent\ignorespaces}
diff --git a/src/Makefile.pamphlet b/src/Makefile.pamphlet
index eab651f..ebb9f2d 100644
--- a/src/Makefile.pamphlet
+++ b/src/Makefile.pamphlet
@@ -499,13 +499,24 @@ etcclean: ${SRC}/etc/Makefile
 \subsection{The doc directory}
 The doc directory contains code used for documenting Axiom.
 
+We've added the books directory above as part of the literate process.
+This takes all of the Axiom volumes and creates .pdf copies in the
+final doc directory.
+
 <<docdir>>=
-docdir: ${SRC}/doc/Makefile
+docdir: ${SPD}/books/Makefile ${SRC}/doc/Makefile
        @echo 41 making ${SRC}/doc
        @mkdir -p ${INT}/doc
        @mkdir -p ${MNT}/${SYS}/bin
+       @(cd ../books ; ${ENV} ${MAKE} )
        @(cd doc ; ${ENV} ${MAKE} )
 
+${SPD}/books/Makefile: ${SPD}/books/Makefile.pamphlet
+       @echo 52 ${SPD}/books/Makefile from ${SPD}/books/Makefile.pamphlet
+       @( cd ${SPD}/books ; \
+           ${DOCUMENT} ${NOISE} Makefile ; \
+           cp Makefile.dvi ${MNT}/${SYS}/doc/src/books.Makefile.dvi )
+
 ${SRC}/doc/Makefile: ${SRC}/doc/Makefile.pamphlet
        @echo 42 making ${SRC}/doc/Makefile from ${SRC}/doc/Makefile.pamphlet
        @( cd doc ; \
diff --git a/src/doc/Makefile.pamphlet b/src/doc/Makefile.pamphlet
index 6cbc985..13d39b9 100644
--- a/src/doc/Makefile.pamphlet
+++ b/src/doc/Makefile.pamphlet
@@ -35,52 +35,6 @@ ${STY}/axiom.sty: ${IN}/axiom.sty.pamphlet
        ${TANGLE} -R"axiom.sty" ${IN}/axiom.sty.pamphlet >axiom.sty )
 
 @ 
-\section{Book Volume 4: Developer Notes}
-This file contains a random collection of facts about Axiom
-intended for developers. It talks about directory structure,
-internal representations, debugging tools, and gives a cookbook
-for using CVS. There is nothing of interest for the end user.
-<<bookvol4>>=
-${DVI}/bookvol4.dvi: ${IN}/bookvol4.pamphlet ${STY}/axiom.sty
-       @echo 3 making ${DVI}/bookvol4.dvi from ${IN}/bookvol4.pamphlet
-       @(cd ${MID} ; \
-       cp ${IN}/bookvol4.pamphlet ${MID} ; \
-       ${DOCUMENT} ${NOISE} bookvol4 ; \
-       cp bookvol4.dvi ${DVI} )
-
-@
-\section{Book}
-This file contains the main documentation for Axiom, the Axiom book.
-We take care to copy the whole [[ps/]] directory that contains images
-used by the book.
-<<Book>>=
-${DVI}/book.dvi: ${IN}/book.pamphlet
-       @echo 4 making ${DVI}/book.dvi from ${IN}/book.pamphlet
-       @(cd ${MID} ; \
-       cp ${IN}/book.pamphlet ${MID} ; \
-       mkdir -p ${MID}/ps ; \
-       cp ${IN}/ps/*ps* ${MID}/ps ; \
-       ${DOCUMENT} ${NOISE} book ; \
-       cp book.dvi ${DVI} ; \
-       mkdir -p ${DVI}/ps ; \
-       cp ${IN}/ps/*ps* ${DVI}/ps )
-
-@
-\section{Book Volume 1: Tutorial}
-This is the tutorial volume, the first book in the new axiom series.
-<<bookvol1>>=
-${DVI}/bookvol1.dvi: ${IN}/bookvol1.pamphlet
-       @echo 4 making ${DVI}/bookvol1.dvi from ${IN}/bookvol1.pamphlet
-       @(cd ${MID} ; \
-       cp ${IN}/bookvol1.pamphlet ${MID} ;\
-       mkdir -p ${MID}/ps ; \
-       cp ${IN}/ps/*ps* ${MID}/ps ; \
-       ${DOCUMENT} ${NOISE} bookvol1 ; \
-       cp bookvol1.dvi ${DVI} ; \
-       mkdir -p ${DVI}/ps ; \
-       cp ${IN}/ps/*ps* ${DVI}/ps )
-
-@
 \section{The Reference Card}
 This is the one-page, 2 sided reference card
 <<refcard>>=
@@ -174,8 +128,7 @@ STY=${OUT}/tex
 DVI=${MNT}/${SYS}/doc
 DOC=${INT}/doc
 
-FILES= ${MID}/axiom.bib ${STY}/axiom.sty ${DVI}/bookvol4.dvi \
-       ${DVI}/book.dvi ${DVI}/bookvol1.dvi ${DVI}/refcard.dvi \
+FILES= ${MID}/axiom.bib ${STY}/axiom.sty ${DVI}/refcard.dvi \
        ${DVI}/endpaper.dvi ${DVI}/rosetta.dvi ${DVI}/spadhelp/spadhelp.files
 
 CMDS=${OUT}/booklet
@@ -188,9 +141,6 @@ all: ${FILES} ${CMDS}
 <<booklet>>
 <<bibtex>>
 <<axiom.sty>>
-<<bookvol4>>
-<<Book>>
-<<bookvol1>>
 <<refcard>>
 <<Endpapers>>
 <<rosetta>>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]