This page lists the various "transform" files which make up the bulk of EasyLatex's code. Each "transform" is a modular sub-program, and features can be added (or removed) by adding and removing transforms from the directories inside the "easylatex" directory.
Transforms installed by default in the standard distribution
In the <code>easylatex/transforms</code> directory
- 25autoLinefeedInMathMode.pl ::Searches within multi-line math mode. Prepends
// to any line without a double backslash (except for the first line of the math mode, which does not get a //). - 30autoAlignEquations.pl ::Searches math modes. Only selects math modes which have a single = sign on each line. Replaces these "=" signs with "
&=&". - 30autoFractions.pl ::Searches for numerical fractions, i.e. "3.5/2". Applies the "\frac" command to them.
- 30easyMatrices.pl ::Searches for [0 0 ; 1 1]-style matrices. Transposes them if they have an ' at the end. Replaces them with LaTeX source to generate the appropriate matrix.
- 30superSubscripts.pl ::Searches for subscripts and superscripts. Surrounds their probable arguments with {}. "Probable arguments" means the next word (as opposed to just the next character, which is the LaTeX default).
- 70autoMathMode.pl ::A relatively big file which should probably be broken up into a few different, smaller transforms. Inside, it's broken into a number of sub-transforms.
- autoMathModeLeftRight ::::Any naked construct of the form \left....\right is put into an align* math environment.
- autoMathModeFrac ::::Naked \frac commands are put into $ math environments
- autoMathModeSuperOrSubscript ::::Naked ^ and _s with words preceding them and followed by either single characters, or {}s without nesting, are put inside the $ math environment.
- autoMathModeBinarySymbols ::::Naked expressions of the form "a \symbol b", where a and b are single characters, and \symbol is in the file
easylatex/math_mode_symbol_list.txt, are put inside the $ math environment. - autoMathModeSimpleSymbols ::::Naked symbols which are in the file
easylatex/math_mode_symbol_list.txt are put inside the $ math environment.
- 75sweepHalfEquationsIntoAdjacentMathMode.pl ::Searches for single characters adjacent to math mode symbols and puts them in math mode. ::Searches for adjacent math modes and combines them; expressions like <pre>$I = $ \begin{align*} ... \end{align*} become <pre>\begin{align*}I = ... \end{align*}</pre> ::This transform should probably be broken in 2.
- 90addHeaderAndFooter.pl ::If the document does not contain
\documentclass, then prepends a LaTeX header and appends a LaTeX footer.
In the <code>easylatex/embed_transforms</code> directory
NOTE: These transforms execute embedded code from the source document, and hence can constitue a security hazard if the user should try to compile an untrusted source document. Hence, they will not be called by default; the user must give the '-e' option on the easylatex command line.
- 25scriptedMatrix.pl ::Looks for "scripted matrixes", that is, for expressions of the form <pre>[[[int,int,script?]]]</pre>. The first two integers are interpreted as the number of rows and columns of the matrix, and the "script" is Perl code which is evaluated at each entry of the matrix (with $i and $j holding the current row and current column of that entry). The expression is replaced with the LaTeX code for the matrix.
Other known transforms (which are NOT included in the standard distribution)