Producing LOOPS documentation with GAPDoc ------------------------------------------ There are only two source files: pkg/loops/doc/loops.xml pkg/loops/doc/loops.bib Everything else is generated by GAPDoc. The following "style" files should be present in the pkg/loops/doc folder: lefttoc.css manual.css nocolorprompt.css ragged.css times.css toggless.css gapdoc.dtd chooser.html When files are ready, run the following in GAP: # path to files, change as needed path := Directory("c:/cygwin64/opt/gap4r8/pkg/loops/doc");; main := "loops.xml";; files := [];; bookname := "loops";; # translate bibtex to BibXMLext (only call when loops.bib changes or loops_bib.xml does not exist) b:=ParseBibFiles( Filename(path, "loops.bib") );; WriteBibXMLextFile( Filename(path, "loops_bib.xml") ,b); HeuristicTranslationsLaTeX2XML.ApplyToFile( Filename(path, "loops_bib.xml") ); # produce inline help and latex doc := ComposedDocument("GAPDoc", path, main, files, true);; r := ParseTreeXMLString(doc[1], doc[2]);; CheckAndCleanGapDocTree(r); t := GAPDoc2Text(r, path);; GAPDoc2TextPrintTextFiles(t, path); l := GAPDoc2LaTeX(r);; FileString(Filename(path, Concatenation(bookname, ".tex")), l); # now call pdflatex, bibtex, pdflatex, makeindex, pdflatex with argument # produce html AddPageNumbersToSix(r, Filename(path, "loops.pnr")); PrintSixFile(Filename(path, "manual.six"), r, bookname); h := GAPDoc2HTML(r, path, "MathJax");; GAPDoc2HTMLPrintHTMLFiles(h, path); # optional html without MathJax # h := GAPDoc2HTML(r, path );; # GAPDoc2HTMLPrintHTMLFiles(h, path); # now produce .ps from .tex # and copy loops.* as manual.* for extensions pdf, ps # delete auxiliary files