B Modules

§ LaTeXML::Global

Global exports used within LaTeXML, and in Packages.

§ Synopsis

use LaTeXML::Global;

§ Description

This module exports the various constants and constructors that are useful throughout LaTeXML, and in Package implementations.

§ Global state

$STATE;

This is bound to the currently active LaTeXML::State by an instance of LaTeXML during processing.

§ Tokens

$catcode = CC_ESCAPE;

Constants for the category codes:

  CC_BEGIN, CC_END, CC_MATH, CC_ALIGN, CC_EOL,
  CC_PARAM, CC_SUPER, CC_SUB, CC_IGNORE,
  CC_SPACE, CC_LETTER, CC_OTHER, CC_ACTIVE,
  CC_COMMENT, CC_INVALID, CC_CS, CC_NOTEXPANDED.

[The last 2 are (apparent) extensions, with catcodes 16 and 17, respectively].

$token = Token($string,$cc);

Creates a LaTeXML::Token with the given content and catcode. The following shorthand versions are also exported for convenience:

  T_BEGIN, T_END, T_MATH, T_ALIGN, T_PARAM,
  T_SUB, T_SUPER, T_SPACE, T_LETTER($letter),
  T_OTHER($char), T_ACTIVE($char),
  T_COMMENT($comment), T_CS($cs)
$tokens = Tokens(@token);

Creates a LaTeXML::Tokens from a list of LaTeXML::Token's

$tokens = Tokenize($string);

Tokenizes the $string according to the standard cattable, returning a LaTeXML::Tokens.

$tokens = TokenizeInternal($string);

Tokenizes the $string according to the internal cattable (where @ is a letter), returning a LaTeXML::Tokens.

@tokens = Explode($string);

Returns a list of the tokens corresponding to the characters in $string.

§ Numbers, etc.

$number = Number($num);

Creates a Number object representing $num.

$number = Float($num);

Creates a floating point object representing $num; This is not part of TeX, but useful.

$dimension = Dimension($dim);

Creates a Dimension object. $num can be a string with the number and units (with any of the usual TeX recognized units), or just a number standing for scaled points (sp).

$mudimension = MuDimension($dim);

Creates a MuDimension object; similar to Dimension.

$glue = Glue($gluespec);

$glue = Glue($sp,$plus,$pfill,$minus,$mfill);

Creates a Glue object. $gluespec can be a string in the form that TeX recognizes (number units optional plus and minus parts). Alternatively, the dimension, plus and minus parts can be given separately: $pfill and $mfill are 0 (when the $plus or $minus part is in sp) or 1,2,3 for fil, fill or filll.

$glue = MuGlue($gluespec);

$glue = MuGlue($sp,$plus,$pfill,$minus,$mfill);

Creates a MuGlue object, similar to Glue.

$pair = Pair($num1,$num2);

Creates an object representing a pair of numbers; Not a part of TeX, but useful for graphical objects. The two components can be any numerical object.

$pair = PairList(@pairs);

Creates an object representing a list of pairs of numbers; Not a part of TeX, but useful for graphical objects.

§ Error Reporting

Fatal($message);

Signals an fatal error, printing $message along with some context. In verbose mode a stack trace is printed.

Error($message);

Signals an error, printing $message along with some context. If in strict mode, this is the same as Fatal(). Otherwise, it attempts to continue processing..

Warn($message);

Prints a warning message along with a short indicator of the input context, unless verbosity is quiet.

NoteProgress($message);

Prints $message unless the verbosity level below 0.

§ Generic functions

Stringify($object);

Returns a short string identifying $object, for debugging. Works on any values and objects, but invokes the stringify method on blessed objects. More informative than the default perl conversion to a string.

ToString($object);

Converts $object to string; most useful for Tokens or Boxes where the string content is desired. Works on any values and objects, but invokes the toString method on blessed objects.

Equals($a,$b);

Compares the two objects for equality. Works on any values and objects, but invokes the equals method on blessed objects, which does a deep comparison of the two objects.