OnWorks favicon

lhs2TeX - Online in the Cloud

Run lhs2TeX in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command lhs2TeX that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



lhs2TeX - a literate Haskell to (La)TeX code translator


lhs2TeX [options] file


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.


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.

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

--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.

Displays the complete GNU General Public License.

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


-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.




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.

Use lhs2TeX online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    The strace project has been moved to
    https://strace.io. strace is a
    diagnostic, debugging and instructional
    userspace tracer for Linux. It is used
    to monitor a...
    Download strace
  • 2
    A GUI for mkvextract utility (part of
    MKVToolNix) which incorporates most (if
    not all) functionality of mkvextract and
    mkvinfo utilities. Written in C#NET 4.0,...
    Download gMKVExtractGUI
  • 3
    JasperReports Library
    JasperReports Library
    JasperReports Library is the
    world's most popular open source
    business intelligence and reporting
    engine. It is entirely written in Java
    and it is able to ...
    Download JasperReports Library
  • 4
    Frappe Books
    Frappe Books
    Frappe Books is a free and open source
    desktop book-keeping software that's
    simple and well-designed to be used by
    small businesses and freelancers. It'...
    Download Frappe Books
  • 5
    Numerical Python
    Numerical Python
    NEWS: NumPy 1.11.2 is the last release
    that will be made on sourceforge. Wheels
    for Windows, Mac, and Linux as well as
    archived source distributions can be fou...
    Download Numerical Python
  • 6
    CMU Sphinx
    CMU Sphinx
    CMUSphinx is a speaker-independent large
    vocabulary continuous speech recognizer
    released under BSD style license. It is
    also a collection of open source tools ...
    Download CMU Sphinx
  • 7
    Old Feren OS Repositories
    Old Feren OS Repositories
    This was the Official Repository for
    Feren OS. To add the latest one, run
    this command: (16.04-based) echo
    "deb ...
    Download Old Feren OS Repositories
  • More »

Linux commands