NAME¶
"LaTeXML" - transforms TeX into XML.
SYNOPSIS¶
use LaTeXML::Core;
my $latexml = LaTeXML::Core->new();
$latexml->convertAndWrite("adocument");
But also see the convenient command line script latexml which suffices for most
purposes.
DESCRIPTION¶
METHODS¶
- "my $latexml = LaTeXML::Core->new(%options);"
- Creates a new LaTeXML object for transforming TeX files into XML.
verbosity : Controls verbosity; higher is more verbose,
smaller is quieter. 0 is the default.
strict : If true, undefined control sequences and
invalid document constructs give fatal
errors, instead of warnings.
includeComments : If false, comments will be excluded
from the result document.
preload : an array of modules to preload
searchpath : an array of paths to be searched for Packages
and style files.
(these generally set config variables in the LaTeXML::Core::State
object)
- "$latexml->convertAndWriteFile($file);"
- Reads the TeX file $file.tex, digests and converts it to XML, and saves it
in $file.xml.
- "$doc = $latexml->convertFile($file);"
- Reads the TeX file $file, digests and converts it to XML and returns the
resulting XML::LibXML::Document.
- "$doc = $latexml->convertString($string);"
- OBSOLETE Use
"$latexml-"convertFile("literal:$string");>
instead.
- "$latexml->writeDOM($doc,$name);"
- Writes the XML document to $name.xml.
- "$box = $latexml->digestFile($file);"
- Reads the TeX file $file, and digests it returning the LaTeXML::Core::Box
representation.
- "$box = $latexml->digestString($string);"
- OBSOLETE Use
"$latexml-"digestFile("literal:$string");>
instead.
- "$doc = $latexml->convertDocument($digested);"
- Converts $digested (the LaTeXML::Core::Box reprentation) into XML,
returning the XML::LibXML::Document.
Customization¶
In the simplest case, LaTeXML will understand your source file and convert it
automatically. With more complicated (realistic) documents, you will likely
need to make document specific declarations for it to understand local macros,
your mathematical notations, and so forth. Before processing a file
doc.tex, LaTeXML reads the file
doc.latexml, if present.
Likewise, the LaTeXML implementation of a TeX style file, say
style.sty
is provided by a file
style.ltxml.
See LaTeXML::Package for documentation of these customization and implementation
files.
SEE ALSO¶
See latexml for a simple command line script.
See LaTeXML::Package for documentation of these customization and implementation
files.
For cases when the high-level declarations described in LaTeXML::Package are not
enough, or for understanding more of LaTeXML's internals, see
- LaTeXML::Core::State
- maintains the current state of processing, bindings or variables,
definitions, etc.
- LaTeXML::Core::Token, LaTeXML::Core::Mouth and LaTeXML::Core::Gullet
- deal with tokens, tokenization of strings and files, and basic TeX
sequences such as arguments, dimensions and so forth.
- LaTeXML::Core::Box and LaTeXML::Core::Stomach
- deal with digestion of tokens into boxes.
- LaTeXML::Core::Document, LaTeXML::Common::Model,
LaTeXML::Core::Rewrite
- dealing with conversion of the digested boxes into XML.
- LaTeXML::Core::Definition and LaTeXML::Core::Parameters
- representation of LaTeX macros, primitives, registers and
constructors.
- LaTeXML::MathParser
- the math parser.
- LaTeXML::Global, LaTeXML::Common::Error, LaTeXML::Common::Object
- other random modules.
AUTHOR¶
Bruce Miller <bruce.miller@nist.gov>
COPYRIGHT¶
Public domain software, produced as part of work done by the United States
Government & not subject to copyright in the US.