NAME
lhs2TeX - a literate Haskell to (La)TeX code translator
SYNOPSIS
lhs2TeX [options] file
DESCRIPTION
This tool takes as its input a literate Haskell source file (Bird-style
or LaTeX-style or even a combination thereof), and produces output,
which, depending on the STYLE selected, can be either a LaTeX document
or a stripped version of the code. The output is produced on stdout.
Several directives are interpreted by lhs2TeX itself and can be used to
customize the output further.
OPTIONS
There are two sorts of options for lhs2TeX. The first selects a STYLE
which governs the overal mode of operation for lhs2TeX. Only one style
may be selected:
--poly The poly style is an improvement of the older math style. It
produces a LaTeX document, with the code blocks formatted using
a proportional font. The output is highly customizable using
formatting directives. Furthermore, the resulting code respects
some of the alignments made in the source file.
--math The math style is as poly style, but has less alignment
capabilities. Tokens appearing in the source file at a special
column are all aligned in the output. Furthermore, indentation
is respected.
--newcode
In the new code style, everything but code blocks is stripped
from the file. In addition, certain syntactic transformations
can be performed on the code using formatting directives. For
example, if the source code is annotated in certain positions to
produce even nicer results in poly style, one can use newcode
style to remove these annotations.
--code In code style, all comments and specification code is stripped
from the file, so that only the code remains. Use this if you
want to produce a smaller version of your source file.
--tt Typewriter style prints code almost verbatim, using a monospaced
font, but formatting certain symbols (lambda abstraction, arrows
...) using an extended character set. This style is default if
no style is explicitly selected, but this behaviour should not
be relied upon. The default style may be changed in future
versions.
--verb Verbatim style prints code as-is, using a monospaced font. No
formatting whatsoever is applied to the code. However, lhs2TeX
does not make use of a LaTeX verbatim environment, but rather
escapes special TeX constructs in the translation. This implies
that it is easier to pass the resulting TeX code to macros or
use it inside certain environments than it would be with a
native verbatim-environment.
The following options are considered are also considered as styles, but
return only information about the program:
-h, -?, --help
Returns a short usage message listing all the available options.
-V, --version
Returns version information.
--copying
Displays the complete GNU General Public License.
--warranty
Displays the parts of the GPL than concerns warranty.
The remaining options modify the behaviour of the program.
-Ppath, --path=path
Takes a (colon-separated) list path of paths that are used as
search path for files to be included. If the list starts with a
colon, then the list is appended to the current search path. If
the list ends with a colon, then the list is prepended to the
current search path. If there is neither a colon at the
beginning nor at the end of the list, then the list replaces the
current search path.
Environment variables can be used in the list of paths, if
enclosed in curly braces, i.e., {VAR} expands to the current
value of the environment variable VAR. If a path ends with a
double slash //, then all subdirectories of that path are
included in the search path. Note that this can significantly
slow down lhs2TeX when looking for files.
The built-in default search path of lhs2TeX is
{HOME}/lhs2TeX//
{HOME}/.lhs2TeX//
{LHS2TEX}//
/usr/local/share/lhs2tex//
/usr/local/share/lhs2TeX//
/usr/local/lib/lhs2tex//
/usr/local/lib/lhs2TeX//
/usr/share/lhs2tex//
/usr/share/lhs2TeX//
/usr/lib/lhs2tex//
/usr/lib/lhs2TeX//
-ifile, --include=file
Includes file before anything else. This option has the same
effect as an
%include file
directive at the beginning of the source file.
-lequation, --let=equation
Assumes equation while processing the source file. This option
has the same effect as a
%let equation
directive at the beginning of the source file.
-sflag, --set=flag
Sets flag to True at the beginning of the source file. This
option has the same effect as a
%let flag=True
at the beginning of the source file.
-uflag, --unset=flag
Sets flag to False at the beginning of the source file. This
option has the same effect as a
%let flag=False
at the beginning of the source file.
VERSION
1.15
AUTHORS
Andres Loeh <polytable at andres-loeh dot de> wrote poly and newcode
styles and is the current maintainer of the package.
Ralf Hinze <ralf at informatik dot uni-bonn dot de> wrote the original
lhs2TeX.
SEE ALSO
http://www.cs.uu.nl/~andres/lhs2tex, the lhs2TeX homepage
Guide2.pdf, the manual