Customization of the LaTeX/LaTeXML environment is limited to the following:
Providing an Artisynth-specific CSS style sheet for the HTML output. This is called artisynth.css and is located in doc/style.
Providing a .tex input file, artisynthDoc.tex, that imports the necessary packages, sets up the page layout, and defines the \javaclass and \javamethod commands (Section 3.6.1) and the sideblock environment (Section 3.4). This file is located in doc/texinputs, along with other input files that are not likely to be part of a standard LaTeX installation.
Postprocessing the HTML produced by LaTeXML to both fill in Javadoc links, and fix a few things, including malformed blank lines in the lstlisting environment, and the presence of certain unicode characters. This is accomplished using the Perl scripts setJavadocLinks and fixLatexmlOutput located in <ARTISYNTH_HOME>/bin and described in detail below.
setJavadocLinks is a Perl script located in <ARTISYNTH_HOME>/bin that postprocesses either PostScript or HTML files to correctly set the URLs for Javadoc links specified by the \javaclass and \javamethod commands (Section 3.6.1). These commands insert a place holder link in the PostScript or HTML output of the form
@JDOCBEGIN/<classOrMethodName>@JDOCEND
This is then processed by setJavadocLinks, which is typically invoked as follows:
> setJavadocLinks --jdocDir <jdir> --jdocUrl <jurl> --docBase <dbase> <input>
For each placeholder link, the script parses the corresponding Javadoc
HTML file (located relative to the directory specified by
--jdocDir <jdir>) to determine how to transform it into a correct
URL. This includes: converting ’.’ characters to ’/’
characters, prepending the appropriate root link for the Javadocs
(such as
http://www.artisynth.org/doc/javadocs, as specified
by the --jdocUrl <jurl> option), and, in the case of methods, finding and
appending the appropriate suffix to locate the method within the
class’s Javadoc file.
setJavadocLinks also sets the correct URL for other ArtiSynth manuals specified using the \artisynthManual command. This command inserts a placeholder link in the PostScript or HTML output of the form
@ARTISYNTHDOCBASE/docpath/docname.html
for HTML files, and
https://www.artisynth.org/@ARTISYNTHDOCBASE/docname.pdf
for PDF files. setJavadocLinks then sets the correct URL by replacing @ARTISYNTHDOCBASE with the base URL specified by --docBase <dbase>.
setJavadocLinks is a Perl script located in <ARTISYNTH_HOME>/bin that postprocesses the HTML output produced by LaTeXML to fix some minor problems. These may include:
Allowing blank lines to appear in lstlisting output.
Replacing certain unicode characters that may not render properly in browsers, such as ellipsis, double quotes and backslashes.
Preventing blank lines from appearing at the beginning of certain text blocks.