Scroll to navigation

LaTeXML::Mouth(3pm) User Contributed Perl Documentation LaTeXML::Mouth(3pm)

NAME

"LaTeXML::Mouth" - tokenize the input.

DESCRIPTION

A "LaTeXML::Mouth" (and subclasses) is responsible for tokenizing, ie. converting plain text and strings into LaTeXML::Tokens according to the current category codes (catcodes) stored in the "LaTeXML::State".
"LaTeXML::FileMouth"
specializes "LaTeXML::Mouth" to tokenize from a file.
"LaTeXML::StyleMouth"
further specializes "LaTeXML::FileMouth" for processing style files, setting the catcode for "@" and ignoring comments.
"LaTeXML::PerlMouth"
is not really a Mouth in the above sense, but is used to definitions from perl modules with exensions ".ltxml" and ".latexml".

Creating Mouths

"$mouth = LaTeXML::Mouth->new($string);"
Creates a new Mouth reading from $string.
"$mouth = LaTeXML::FileMouth->new($pathname);"
Creates a new FileMouth to read from the given file.
"$mouth = LaTeXML::StyleMouth->new($pathname);"
Creates a new StyleMouth to read from the given style file.

Methods

"$token = $mouth->readToken;"
Returns the next LaTeXML::Token from the source.
"$boole = $mouth->hasMoreInput;"
Returns whether there is more data to read.
"$string = $mouth->getLocator($long);"
Return a description of current position in the source, for reporting errors.
"$tokens = $mouth->readTokens($until);"
Reads tokens until one matches $until (comparing the character, but not catcode). This is useful for the "\verb" command.
"$lines = $mouth->readRawLines($endline,$exact);"
Reads raw (untokenized) lines from $mouth until a line matching $endline is found. If $exact is true, $endline is matched exactly, with no leading or trailing data (like in the c<comment> package). Otherwise, the match is done like with the c<verbatim> environment; any text preceding $endline is returned as the last line, and any characters after $endline remains in the mouth to be tokenized.

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.
2009-06-11 perl v5.10.1