axiom-developer
[Top][All Lists]
Advanced

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

[Axiom-developer] Hyperdoc tutorial on making new pages


From: daly
Subject: [Axiom-developer] Hyperdoc tutorial on making new pages
Date: Sat, 28 Feb 2009 00:58:57 -0600

In Axiom it is easy to develop new pages in hyperdoc.
All of the hyperdoc pages live in bookvol7.1.pamphlet.

The structure of each page, say for the Fantastic domain, consists 
of a few lines of latex followed by a literate chunk. All of the
hyperdoc page information goes into the literate chunk and will
be extracted as a hyperdoc page.

\section{fantastic.ht}  <-- ordinary latex
\pagehead{FantasticPage}{fantastic.ht}{Fantastic} <-- special latex
\pagto{.....            <-- for latex (not hyperdoc) links to other pages
<<fantastic.ht>>=       <-- this is what htadd looks for

   all the documentation for domain Fantastic

@                       <-- this is the end of the page for htadd

When you add new pages to bookvol7.1.pamphlet you need to tell the
system about the changes.  The "htadd" function will search the
bookvol7.1.pamphlet file for chunks with the name "*.ht" and build the
file ht.db.

The ht.db file is used by hyperdoc to find pages. 
Each line in ht.db contains a line that 

FantasticPage (byteIndex) (lineIndex)

So the two critical files, bookvol7.1.pamphlet and ht.db live in $AXIOM/doc


There is a very fast cycle for editing.
cd $AXIOM/doc

while (1) do
   axiom                          <-- at the shell prompt
   (navigate to page in hyperdoc) <-- to check your work
   )lisp (bye)                    <-- at the axiom prompt
   (modify bookvol7.1.pamphlet)   <-- change the page
   rm ht.db                       <-- remove the old database
   htadd bookvol7.1.pamphlet      <-- remake the database

Tim









reply via email to

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