LATEX2HTML NAME latex2html - translate LaTeX files to HTML (HyperText Markup Language) SYNOPSIS latex2html [-split num] [-link num] [-nolatex] [-t top_page_title] [-dir output_directory] [-address author_address] [-info string] [-h ] filename... DESCRIPTION Latex2html is a Perl program that translates LaTeX source files into HTML. For each source file given as an argument the translator will create a directory containing the corresponding HTML files. The translator: o breaks up a document into sectioning components, o provides a 'next', 'previous', and 'up' navigation panel on every page, o handles equations, tables, figures, and any arbitrary environments by passing them to LaTeX and including them as HTML inlined images, o handles definitions of new commands, environments, and theorems (this opens up the possibility of defining HTML macros in LaTeX!), o handles footnotes, tables of contents, lists of figures and tables, bibliographies and can generate an index, o translates cross-references into hyperlinks, o provides hooks for including arbitrary links (internal to the document or external) as LaTeX commands o can deal sensibly at least with the Common LaTeX commands summarized at the back of the LaTeX blue book [1]. o will try and translate any document with embedded LaTeX commands irrespective of whether it is complete or syntactically legal. OPTIONS -split num Stop splitting sections into separate files at this depth. A value of 0 will put the document into a single HTML file. The default is 8. -link num Stops revealing child nodes at each node at this depth. (A node is a section/subsection/subsubsection etc.). A value of 0 will show NO links to child nodes, a value of 1 will show only the immediate child nodes, etc. A value at least as big as that of the -split option will produce a table of contents for the tree structure, rooted at each given node. The default is 4. -nolatex Disable the mechanism for passing unknown environments to LaTeX for processing. This can be thought of as 'draft mode' which allows faster translation of the basic document structure without fancy figures, equations or tables. -t top_page_title Name the document using this title. -dir output_directory Redirect the output to this directory. -address author_address Sign each page with this address. -info string Generate a new section "About this document ..." containg more information about the document being translated. The default is to generate a section with information on the original document, the date, the user and the translator. An empty string (or the value 0) disables the creation of this extra section. -h Print out the list of options. PROBLEMS Correctness and Efficiency The translator cannot be guaranteed to perform as expected. Apart from possible bugs the translator may place heavy demands on your resources. Unrecognized Commands and Environments As mentioned earlier the translator can handle at least the Common LaTeX commands summarized at the back of the LaTeX blue book [1]. Although it is very easy to extend the command and environment set, there is currently no way of doing so, short of modifying the Perl script. Unrecognized commands are ignored and any arguments are left in the text. Unrecognized environments are passed to LaTeX and the result is included in the document as one or more inlined images. Cross-references Obviously it is not possible to deal with explicit (hard-wired) cross-references that do not use the 'label' - 'ref' mechanism. Such references are left dangling. References from an environment that is passed to for processing (e.g. a 'cite', or a 'ref' command), are ignored unless they occur in a caption. In the latter case a link will be active but not in the actual caption in the main document (this will be part of the inlined image) but in the caption in the list of Figures or the list of Tables. In some instances it would be more appropriate to use numeric references rather than active links e.g. when there are references to several axioms or theorems. Bibliographic References Unless the bibliography is constructed manually (using the 'thebibliography' environment), the translator requires an up to date .bbl for each input argument. The bbl file should be present in the same directory as . Index The translator generates its own index by saving the arguments of the index command. The contents of the 'theindex' environment and the 'printindex' command are ignored. Foreign Characters Are not supported. New Definitions New definitions ('newcommand', 'newenvironment', and 'newtheorem' will not work as expected if they are defined more than once. Only the last definition is used throughout the document. Scope of declarations and environments If the scope of a declaration or environment crosses section boundaries, then the output will not be as expected, because each section is processed independently. Postscript to GIF conversion The conversion from postscript to the GIF format is done partly through gs (ghostscript). The conversion will not work if gs is invoked with the -dSAFER option. Also, the result of the conversion may be poor. AUTHOR Nikos Drakos, Computer Based Learning Unit, University of Leeds. (nikos@cbl.leeds.ac.uk) Several other people have contributed suggestions, ideas, solutions, support and encouragement. Some of these are Roderick Williams, Ana Maria Paiva, Jamil Sawar and Andrew Cole here at the Computer Based Learning Unit of the University of Leeds. The idea of splitting LaTeX files into more than one components linked with hyperlinks came from a Perl script written by Toni Lantunen at CERN. Thanks to Robert Cailliau of the World Wide Web Project also at CERN for giving me access to the source code and documentation. REFERENCES [1] Leslie Lamport. LATEX User's Guide & Reference Manual. Addison-Wesley Publishing Company, Inc., 1986.