# Documentation Guide

Search

for

Features and NewsWeb2c and configurationTeX variantsGuidesGraphicsDiagramsLaTeX packagesAncillary programsMan pagesMore...

This page is an attempt at a guided tour around the TeX and LaTeX documentation which is distributed with teTeX.

teTeX is a unix TeX and LaTeX system assembled by Thomas Esser since 1994. Its home page is located at http://www.tug.org/tetex/. The teTeX Manual is the main reference for teTeX specific information including configuration. A few notes on teTeX configuration are available below but are not intended to replace the manual.

Queries about installing and maintaining the teTeX installation itself should be directed to the teTeX mailing list: (see the teTeX Homepage for instructions) - but check the frequently-asked questions list first. Questions about using LaTeX, TeX, etc., are best posted to the usenet newsgroup comp.text.tex where they will receive attention from a worldwide readership.

The documentation available through this page is provided as either plain text, html or in one of the 3 common formats for TeX related output described in the table below. Note that only the xdvi* software is distributed with teTeX.

File suffixFormat name Viewers
*.dvi Device Independent xdvi, xdvik, kdvi,...
*.ps PostScriptghostview, gv, ggv, kghostview,...

All these file types may be viewed from a properly configured web browser such as those from the Mozilla family (with appropriate plugins such as MozPlugger, the Acrobat Reader plugin,...), or Konqueror, or ... Most of the original LaTeX sources can be found in the documentation tree which is rooted at $TEXMFDIST/doc or$TEXMFLOCAL/doc.

teTeX makes available the traditional man and info pages. The former are listed in the man pages section below.

Other interfaces to documentation include the texdoc and texdoctk tools. A php texdoc emulator is available.

Note that teTeX does not contain a graphical interface for editing and processing *.tex documents. Choices in a unix environment for this include (x)emacs (with auctex or preview-latex), kile, nedit and its LaTeX mode, vim,...

## Main features in the release

• teTeX is free software.
• Included programs: web2c, xdvik, dvipsk, texinfo, pdfetex, Omega, dvipng, aleph, dviljk, ps2pk, makeindex, texconfig, fmtutil, updmap, texdoc, texdoctk.
• TDS (TeX Directory Structure) compliant support tree with fonts / macros / documentation: 226 MB, >13000 files.
• Updated texmf tree with many updated or added packages. Most notably: LaTeX2e, ConTeXt, Latin Modern fonts, beamer, koma-script and memoir package.
• Easy to install and to customize, even for a multi-platform setup.
• Ready for producing resolution independent (bitmap free) postscript or pdf documents (including thumbnails, hyperlinks and bookmarks).

## What is new in ?

• Updated programs: web2c 7.5.4, xdvik 22.84.9, dvipsk 5.95a, texinfo 4.8, pdfetex 1.21a (based on TeX-3.141592 and eTeX-2.2), Omega 1.23.2.3, dviljk 2.6p2, ps2pk 1.5, makeindex 2.14, texi2html 1.76, texconfig, fmtutil, updmap, texdoc, texdoctk v0.6.0a.
• Restructured texmf trees: cached runtime data or updated configuration files are no longer mixed with the distributed tree.
• Added programs: dvipng 1.5 (convert dvi -> png) and aleph 3.141592-1.15-2.1-0.0-rc4 (combines a stable omega version with features of eTeX).
• Updated texmf tree: LaTeX2e <2003/12/01>, ConTeXt version 2005.01.31, Latin Modern fonts, beamer, memoir, and many others.
• TDS: the distributed texmf tree was rearranged to follow revision 1.1 of the TDS.
• Default engine: pdfetex is now the default engine used for most formats (including latex).
• Multi-user: texconfig / updmap / fmtutil can now be used in a multi-user environment.

Refer to the teTeX Manual for further details.

## Main features in the 2.0 release

• included files reviewed for license problems; teTeX now is free software!
• program packages: web2c 7.4.5, pdfTeX 1.10a, e-TeX 2.1, Omega 1.23.2.1, xdvik 22.40v, dvipsk 5.92b, dviljk 2.6p2, dvipdfm 0.13.2c, ps2pk 1.5, makeindex 2.14, texinfo 4.4, texconfig 2.0, updmap 2.0, texdoctk.
• main TeX formats: plain.tex 3.14159265, LaTeX2e <2001/06/01>, ConTeXt 2003.1.31
• TDS (TeX Directory Structure) compliant support tree with fonts / macros / documentation: 150 MB, >11000 files
• easy to install and to customize, even for a multi-platform setup ready for producing resolution independent (bitmap free) postscript or pdf documents (including thumbnails, hyperlinks and bookmarks)

## What else was new in teTEX 2

• The dvipdfm application by Mark A. Wicks
• The command texdoc [package-name] will attempt to display documentation for that package from the shell command line.
• pazo and tx/px fonts added (to supplement times / palatino).
• Many fonts and macro packages updated or added, e.g., pdfpages or framed.

## What was new in teTEX 1

• New TeX-like programs, e-tex, omega, pdftex and their LaTeX variants.
• New format ConTeXt.
• Computer Modern fonts in Adobe Postscript Type 1 form (courtesy of Blue Sky Research.) See the entry for dvips.
• Based on Web2C 7.3. This allows the size of TeX’s tables to be set in the configuration file texmf.cnf and easily adjusted.
• Updated release of LaTeX and many of its packages.
• Xdvi is now hypertext-capable. Especially useful in conjunction with the new hyperref package.
• Many new packages including bm, colortbl, fancyvrb, hyperref, picins, sidecap, footmisc, and the MDW tools (at, cmtt, doafter, mathenv,...).
• T2 font encoding, support for Cyrillic and LH fonts.
• Better support for installing new fonts.

## Web2c and configuration

teTeX is based on the web2c implementation of TeX, metafont, etc. Information on running the various programs is contained in web2c.pdf. All programs use a common, configurable, library for searching for files. The file kpathsea.pdf gives details. Data file system trees for tex, metafont and related programs (texmf trees) in teTeX are structured according to the TeX Directory Structure (TDS). Available texmf trees, their location and purpose are set in the web2c configuration file texmf.cnf and described there and in the manual.

Configuration options in teTeX can be set system-wide using the texconfig-sys utility, or at the user level by texconfig. This *-sys convention is also followed for created map files (udpmap) and format files (fmtutil). Files created by these utilities are stored in the appropriate texmf tree.

To speed up file search file name databases named ls-R are used. They are located at the root of each texmf tree and need to be updated with the texhash command after the addition of files to the texmf trees except in the cases of automatic font generation or when using texconfig.

## TeX and its variants

This distribution includes the classical plain and LaTeX macro packages as well as several more recent developments of TeX (and LaTeX).

### TeX

The original TeX described in the TeXbook by Donald E. Knuth.

### encTeX

A backwards compatible extension to the original TeX allowing UTF-8 processing in 8-bit TeX.

### plain TeX

The format described in the TeXbook.

### Eplain

Eplain is an extended version of plain TeX format.

### LaTeX

The extremely popular macro package originally by Leslie Lamport and described in LaTeX, a document preparation system (2nd edition) . Currently LaTeX is developed by the LaTeX project which has recently updated its description of additional capabilities in the LaTeX Companion (2nd edition). Most entries below deal with LaTeX functionality.

### PDFTeX and PDFLaTeX

Han The Thanh’s TeX variant which can generate output in Adobe PDF format. Documentation is in the PDFTeX manual.

### Omega and Lambda

The Omega system and the corresponding LaTeX format Lambda extend TeX for mixed multi-lingual typesetting using unicode. See the omega home page.

### ETeX and ELaTeX

e-TeX adds several extensions to TeX notably right-to-left typesetting.

### Aleph

The Aleph project aims to build a "usable" version of Omega, incorporating ETeX extensions.

### ConTeXt

A relatively recent macro package for TeX by Hans Hagen. A ConTeXt specific package is included: PPCHTEX which allows typesetting chemical structure-formulas.

## Guides

Useful information in a questions and answers format is provided by the UK TeX users group Frequently Asked Questions list.

### LaTeX guides

LaTeX2e is the recommended version of LaTeX, and the older version LaTeX 2.09 is obsolete. If you know LaTeX2.09 read about LaTeX2e vs LaTeX2.09 and why you should switch. There is one manual describing the LaTeX language itself, which may at a pinch substitute for a book, the Not so short Introduction to LaTeX2e. There is also a full reference manual of LaTeX2e commands -- ideal for looking up a particular piece of formatting while writing a document (also available in dvi format) and a table of available mathematical symbols. Either new or old users of LaTeX 2e should benefit from checking the Dos and don’ts of LaTeX 2e.

Most LaTeX books refer to a local guide to describe operating-system and implementation-dependent aspects, notably the commands to invoke LaTeX and how to preview and print documents. The document Running LaTeX and utilities on a Unix system (also in PostScript form) is a good introduction to most of these topics.

There are errata lists available for two well-known books, the LaTeX Book and the LaTeX Companion (1st edition) (2nd edition).

The LaTeX project maintains a documentation page listing guides available through the web or in book form.

### ConTeXt guides

teTeX includes a few ConTeXt guides: the main ConTeXt manual, a readme document, an installation guide with information on the command line interface texexec, additional information on texexec, an introductory document and a full list of commands. Further documentation on ConTeXt is available from the PRAGMA site.

## Graphics and Colour

A very common requirement is to include some kind of graphics as an external file (usually PostScript) into a LaTeX document. The definitive manual on how to do this is Keith Reckdahl’s excellent Using imported graphics in LaTeX2e. The document Packages in the ‘graphics’ bundle is the documentation on the recommended LaTeX2e graphics package, which includes information on how to use colours in the output.

Other graphics related packages include:

psfrag
Allows importing PostScript figures from any other package, but use LaTeX’s power for all of the mathematical and textual annotations. (But note that xfig allows you to do this anyway).
poligraf
Provides preparation of pages for prepress, color separation, cropmarks, color and gray scale bars, and mirror print. An example for LaTeX and an example for plain are available.
preview
This package is used by preview-latex for (x)emacs. It allows to produce tight (meaning with correct bounding box) eps images of typeset fragments like displayed formulas.
ps4pdf
A new way of dealing with Postscript commands (e.g. PSTricks graphics, PSfrag replacements, EPS graphics) inside pdflatex documents. See the test file.
xcolor
Allows a user to select a document-wide target color model and offers tools for conversion between color models.
epstopdf.sty
PDF output through pdftex and the graphicx (or graphics) package implies graphics inclusions as *.pdf files (or other formats but not .eps). A change in output format normally implies using the epstopdf program to convert graphics inclusions. You may find the epstopdf style convenient as it automates such a procedure.

## Graph and Diagram Drawing

Probably the best way to draw a simple diagram is to use the xfig program (see the unix man page for details). However there are programmatic ways for more sophisticated work. These include:

eepic
A macro package for a much enhanced LaTeX "picture mode". Requires driver support for tpic \specials. Some drawing programs such as xfig can write their output as eepic macros.
pict2e
A redefinition of commands in the picture environment
curves
An enhancement of LaTeX’s picture mode to improve curve drawing.
xypic
there is also a reference manual.
texdraw
There are examples in the directory generic/texdraw/.
pspicture
Extend LaTeX picture drawing environment using PostScript \specials.
multibox
Multiple boxes in pictures.
Pstricks
a set of macros for performing fancy twiddles using PostScript, such as drawing of geometrical objects, diagrams, fancy boxes, grayscales, etc. There is a User Guide ( part 1, part 2, part 3, part 4), a quick reference card, and lots of documentation in the doc/generic/pstricks directory. Documents inside the obsolete directory, including the manual and reference card, are indeed obsolete but still useful. See also the Pstricks web pages by Denis Girou and Herbert Voss. Several additions to Pstricks are available:
Various additions to the Pstricks macros.
pst-3dplot
3d plotting.
pst-gr3d
3d grids.
pst-vue3d
3d views.
pst-blur
pst-circ
Electric circuits.
pst-fill
Filling and tiling.
pst-lens
Simulating a lens over a graphic.
pst-math
Extra mathematical functions.
pst-osci
Oscilloscope screenshots.
pst-poly
Polygonal shapes.
pst-slpe
pst-uml
UML diagrams.
psgo
GO diagrams.
METAPOST
a development of Donald Knuth’s METAFONT program which produces PostScript rendition of fonts, diagrams, etc., rather than bitmapped versions. Documentation includes a manual and a guide to plotting graphs using METAPOST.
trees
Macros for drawing "tree" diagrams.
overpic
This package defines the overpic environment for overlaying a picture environment on top of an included graphic defined by an includegraphics command. Examples in opic-abs.tex and opic-rel.tex.
pb-diagram
Commutative diagrams using an adaptative grid and variable arrows. Source example available.
ecltree
Tree like structures with words on nodes.

## LaTeX Packages

Alternative classesDocument structureFormatting toolsPage layoutDocument appearanceTablesFloatsFontsMathematicsLanguagesAlternative Doc TypesPackage programmingUtilities

The main LaTeX classes included with the core distribution are article, book, report, letter and slides. They are describeb in LaTeX, a document preparation system.

LaTeX packages offer additional control and alternatives to the visual appearance and formatting of LaTeX documents. Many are described in The LaTeX Companion. The majority of packages included in teTeX are listed below. Many more have been written to provide additional capabilities and are available for download from the Comprehensive TeX Archive Network servers, abbreviated to CTAN (locate a nearby CTAN node). Here is the Catalogue of packages available from CTAN. LaTeX itself and most of these packages are released under the LaTeX Project Public License.

### Alternative classes and bundles

Most additional LaTeX classes and bundles listed in the following sections have a narrow scope and try to solve a very specific problem. A few try to offer full alternatives with respect to document design to the main LaTeX classes. Two examples with such a generic nature:

KOMA-script
Provides drop-in replacements for the standard classes but also additional packages usable with LaTeX or KOMA-script classes. Inspired by german typographical traditions.
memoir
A bundle by Peter Wilson of some of his packages and other material allowing page, chapter and caption styles, typewriter appearance, facilities aimed at e-books,...

A large number of publishers of scientific books and journals provide their own latex styles, some of these under licenses that allow using them freely. Two such cases are included in teTeX:

amsmath, amsfonts, amsart, amsbook, amsproc...
The American Mathematical Society AMS-Math (AMS-LaTeX) packages (see the Mathematics section below and the online FAQ).
REVTeX 4
From the American Physical Society. Check the webpage and the documents included with teTeX.

### Document Structure

xr
Page references to external documents.
varioref
"Intelligent" page references.
lastpage
Reference the number of pages in your LaTeX document (as in a page footer that says: Page N of M).
totpages
Reference the total number of pages in your dvi document.
hyperref
Create hypertext documents in dvi, postscript or PDF form. Contents listings, references, bibliographic citations and URLs are converted to hyperlinks.
dinbrief
The dinbrief document class (in German).
german
The german and ngerman document classes.
ntgclass
Dutch document classes.
minitoc
titlesec
Customize the sectioning format of a document.
index
A different implementation of the LaTeX indexing commands. An example is included.
abstract
Extra options for the abstract, e.g. a one column abstract in a 2 column document.
appendix
Provides extra facilities for typesetting appendices.
sectsty
Macros to customize sectional headings (section, chapter, etc.)
tocloft
tocbibind
comment
Test file for customizable comments using comment.sty.

### Formatting Tools

upgreek
Upright lower case greek letters.
xspace
Define commands that don’t eat spaces.
verbatim
A more robust implementation of the verbatim environment.
moreverb
An extension to the verbatim package that can handle TAB expansion, can number lines in an included file, can produce boxed verbatims, etc.
fancyvrb
A comprehensive and customizable re-implementation of the verbatim environment. Allows specification of fonts, colours, etc., line numbering, framing, TAB handling and conditional processing.
fvrb-ex
An extension to fancyvrb.
enumerate
Adds an optional argument to the enumerate environment which determines the style in which the counter is printed.
icomma
Intelligent spacing around commas which corrects problems when the comma is used as a decimal separator.
comma
\usepackage{comma} defines the command \commaform{number} which typesets number with a comma every third digit. If you want something other than a comma, for instance a thin space, or a full word space, redefine \commaformtoken for instance \renewcommand\commaformtoken{\,}.
indentfirst
Indent first paragraph after section header.
program
This package is for typesetting computer programs and algorithms. There is an example in program-demo.tex.
textfit
Package to support fitting of text to a given width of height by scaling the font.
typehtml
Typeset HTML (i.e., World Wide Web documents) directly from LaTeX.
plain
Allows the inclusion of plain tex markup in a LaTeX document. It defines the LaTeX environment plain which is used to enclose the plain tex to be included.
amsrefs
An alternative to BibTeX included in the AMS classes allowing typesetting of bibliographic entries directly from LaTeX with records in a format similar to the one used in BibTeX .bib files. Extra documentation in the latex/amscls directory.
natbib
Customizable citations. Can do almost any variant of numerical or author-date style citations. There’s also a quick reference.
footbib
Citations as footnotes.
bibentry
Insert formatted bibliographic references inline in the text.
paralist
Typeset lists within paragraphs.
MDW tools
A collection of packages written by Mark Wooding including the next five entries. Documentation for other components can be found in the appropriate section in this document.
mdwlist
Various list related environments. There is a more versatile description environment, and some stuff for making compacted lists (with no extra space between items).
mdwtab
A complete ground-up rewrite of LaTeX’s tabular and array environments. Has lots of advantages over the standard version, and over the version in array.sty.
footnote
Provides commands for saving executing footnotes.
sverb
A bunch of macros for doing verbatim things.
syntax
A load of commands for describing syntax. There is an environment for typesetting BNF grammars.
acronym
Make sure all acronyms used are spelt out at least once.
hyphenat
Improved control over hyphenation.
ragged2e
Provides commands and environments for setting ragged text which are easy to configure to allow hyphenation.
nomencl
Package for preparing tables of nomenclature or glossaries.
SIunits
Macros for typesetting SI units.
units
Typesetting of physical/metric units.
gensymb
Unifying typographical conventions for measurement units in text and formulas.
soul
Typeset text in a spaced-out or underlined fashion.
ulem
Underlining styles.
framed
Allows defining framed or shaded regions that can be divided between different pages. The shaded environment requires the color package and the definition of shadecolor, e.g., \definecolor{shadecolor}{gray}{.9}.
lettrine
Allows dropped capitals at the beginning of a paragraph in different styles and adjustements. A demo file is available.
listings
A source code printer.
alphalph
Numbering using letters.
sublabel
Subnumbering as in 4a, 4b, 4c, 4d.
authblk
A more versatile way to indicate author names and affiliations.
shapepar
A macro to typeset paragraphs in a specific shape. Check the same directory for examples and a shape generating python script.
texnames
Macros to typeset the names of the TeX and METAFONT programs.
url
Typesetting URLs, e.g., \url{http://www.tug.org/}.
aeguill
French guillemets («») in several fonts.

### Page Layout

geometry
Customize page layout (page sizes) using an easy and flexible user interface. Example sample.tex generates a testpage.
fancyhdr
Support for sophisticated control of page headers and footers in LaTeX2e. It supercedes fancyheadings.
footmisc
Customize footnote numbering, style and presentation.
footnpag
Allows footnotes on individual pages to be numbered from 1, rather than being numbered sequentially through the document.
nopageno
\usepackage{nopageno} suppresses all page numbering including that on title and frontmatter pages.
chappg
The chappg package causes pages to be numbered in the style chapter-pagenumber. So the pages of chapter 3 will be numbered 3-1, 3-2, ..., and the pages of appendix B will be numbered B-1, B-2, ...
layout
Generate a test page showing the page layout.
layouts
Draw display of page layout parameters.
scale
Rescales an entire document by 1.414 for photographic reduction.
anysize
Another package to set page sizes. Superceded by geometry.
fix2col
Improves some deficiencies in LaTeX’s built-in two column output.
mparhack
Corrects some anomalies of \marginpar.
multicol
LaTeX package to mix single and multiple columns. Allows you to shift between two and one columns anywhere.
multitoc
Typeset tables of contents and lists of figures and tables in multi-column mode.
ftnright
Customize placement of footnotes in two column documents.
picinpar
Insert pictures into paragraphs. (NOTE: Piet van Oostrum does not recommend this package. Picins is recommended instead.)
picins
Insert pictures into paragraphs.
rotating
Environment to rotate text, figures etc. There are examples, as LaTeX source and dvi or PostScript output.
wrapfig
Wrap text around a figure or table.
eso-pic
This package makes it easy to add some picture commands to every page.
pdfpages
A pdflatex macro package for inclusion of external document pdf pages.
extsizes
Extends LaTeX classes from the traditional 10pt, 11pt or 12pt text to 8pt, 9pt, 14pt, 17pt, or 20pt text needed in special circunstances.
fullpage
A package to fully use a page leaving minimal margins.
vmargin
An alternative way for dealing with paper sizes and margins.
textpos
Absolute positioning on the page. Useful for posters.
chngpage
Allows changing page layout in the middle of a document.
portland
Allows changes between portrait and landscape.
setspace
Double, one and a half spacing, any line spacing...
parskip
No parindent, some parskip.
nextpage
Provides additional \clearpage like commands, allowing such things as clearing to the next even numbered page without flushing floats.

### Modifying document appearance

showkeys
Print label, ref, cite and bib keys.
showlabels
Print \label arguments or equation numbers in margin at point of definition.
changebar
Add "change bars" in a document margin using dvi \specials.
crop
Print crop marks.
draftcopy
Overprint DRAFT on each page of document to indicate draft copy. The directory latex/draftcopy/ has a number of examples.
count1to
Sets some new counters for section selection.
prelim2e
Allows marking of preliminary versions of a document in the output.
thumbpdf
Support of thumbnails with pdfTeX, plain/LaTeX formats.
hypbmsec
Expands sectioning commands to allow replacing bookmarks in pdf documents if section titles are not suitable for that purpose.
pagesel
Output a subset of the pages in the document.
hypcap
Adjusting the anchor point of captions when using hyperref.

### Tables

array
An extended implementation of the array and tabular environments which implements options to format columns.
longtable
Support for tables longer than a page.
delarray
Add delimiters (parentheses, etc.) around arrays.
supertabular
A multi-page tables package.
xtab
Another multi-page tables package extending supertabular.
dcolumn
Align on the decimal point of numbers in tabulars.
hhline
Better horizontal lines in tabulars and arrays.
tabularx
Tabulars that widen automatically.
ltxtable
Longtable combined with tabularx.
colortbl
booktabs
A package to lay out tables in high-quality (according to the author’s opinion) book form.
slashbox
Typeset a box with a diagonal divider for table headings.
blkarray
A new and experimental way of dealing with arrays.
threeparttable
Tables with captions and notes.
multirow
Make an entry that will span multiple rows of a table.
tabls
Modifies the array and tabular of LaTeX to keep text from touching other text or lines.

### Floats

Floats are environments like figure and table which move text, etc., around in the document.

afterpage
Implements a command that causes the commands specified in its argument to be expanded after the current page is output. Useful to flush floats, for example
float
Improves the interface for defining floating objects such as figures and tables. Introduces the boxed float and the ruled float.
subfig (and subfigure)
Figures divided into subfigures. Due to lack of full backward compatibility of subfig, relatively to the currently obsolete and differently named version (subfigure), both are available. In new documents use subfig. Examples for subfig in the same directory.
endfloat
Place all figures on pages by themselves at the end of the document.
placeins
Keeps floats "in their place", preventing them from floating past a \FloatBarrier command into another section.
caption
Extend caption capabilities for figures and tables, such as the caption width, style, font.
ccaption
Commands for continuation captions, unnumbered captions, and a legend heading for any environment.
sidecap
Defines new LaTeX environments called SCfigure and SCtable (analogous to figure and table), to typeset captions sideways. leftcaption and rightcaption.
floatflt
Float text around figures and tables which do not span the full width of a page. This is an improved version of floatfig. Examples, latex source, precursor package floatfig.
rotfloat
Combines rotating package with enhanced float facilities of float. Examples: LaTeX source and output.
figcaps
A package to put figures and tables at the end of an article.

### Fonts and Supporting Packages

In addition to the preinstalled fonts, see the section on using fontinst to install new fonts, especially PostScript Type 1 fonts and the font naming conventions.

psnfss
A package collection providing the LaTeX2e font selection scheme for standard Postscript fonts. Includes how to invoke several styles using standard Postscript fonts (Times, Helvetica, Palatino,...) and some free fonts (Charter, Utopia, Pazo) instead of the cm font family.
Latin Modern (LM)
A pre-release version of the Latin Modern family of Postscript type 1 fonts wich extentends the CM family with lots of additional (mainly accented) characters.
ae
A set of virtual fonts designed to be a close approximation to a T1-encoded set based on the CM fonts. This should make it possible to use the existing Type1 versions of the CM fonts to produce PDF files even when one needs hyphenation patterns other than English. See also aecompl
fontsmpl
Print a sample of a font.
rawfonts
Emulation of LaTeX 2.09 low-level font commands, eg \tenrm.
pslatex
LaTeX with a mix of the standard Postscript fonts. Available as a package or a command.
beton
Typeset a LaTeX2e document with the Concrete fonts designed by Don Knuth and used in his book Concrete Mathematics.
ccfonts
LaTeX font definition files for the Concrete fonts and a LaTeX package for typesetting documents using Concrete as the default font family.
cmbright
Use the "Computer Modern bright" font family.
Y&Y support
teTeX contains support for several font families from Y&Y. Such fonts are not a part of teTeX and must be purchased separately. Support packages include:
mathtime
Support for the Mathtime fonts. Note that if you really want to use the mathtime fonts you need to reverse the change described in the belleek fonts README file.
mt11p
Support for the Mathtime and MathtimePlus fonts.
lucidabr
LY1
Support for the texnansi encoding as used by default in the Y&Y TeX system. There is also an option to support the ansinew encoding that is the default encoding in Microsoft Windows.
belleek
teTeX includes the belleek fonts as a drop-in replacement for the mathtime fonts.
dotlessj
This package declares the macros \j and \jmath to insert a dotless j in text and math mode.
dotlessi
Provides dotless i’s and j’s for use in any math font.
mflogo
LaTeX package and font definition file to access the Knuthian logo fonts described in The MetaFontbook and the MetaFont and MetaPost logos in LaTeX documents.
Concrete Math fonts
A set of math fonts for use with Donald Knuth’s concrete text fonts.
concrete
This package simply includes the beton and euler packages for an approximation of the style in Concrete Mathematics.
mathcomp
A package for using the Text Companion fonts in math mode. (For example to get an upright "mu".)
type1cm
Allows the use of Computer Modern fonts at arbitrary type sizes instead of the usual discrete magsteps.
scalefnt
Makes available the \scalefont command to scale the current font and baselineskip.
relsize
Several ways to rescale fonts.
yfonts
A LaTeX interface to the old-german fonts designed by Yannis Haralambous.
oldgerm
German handwriting fonts.
wasysym
This package defines LaTeX commands to insert the symbols in the wasysym font set.
stmaryrd
The "St Mary’s Road" symbol fonts.
marvodoc
The Martin Vogel symbol fonts.
cmtt
Provides an mTT encoding for the Computer Modern Typewriter font, which solves lots of messy problems.
mathpazo
The mathpazo fonts and style. This allows mixing the Palatino font for text with suitable fonts in formulas.
pxfonts
Another fonts and style package centered on Palatino for roman text, Helvetica for sans serif, extra or modified fonts for math,..., offering a full alternative to the use of the cm font family.
txfonts
Another fonts and style package centered on Times for roman text,..., offering a full alternative to the use of the cm font family.
cbgreek
Greek text fonts.
eurosym
An officially looking euro currency symbol. Typeset the documentation for testing.
microtype
Micro typographic adjustements with pdflatex. A test file is included.

### Mathematics including AMS extensions

A very useful guide to the American Mathematical Society extensions to LaTeX is provided in Chapter 8 of The LaTeX Companion, 2nd edition (table of contents).

amsmath
User guide for AMS-LaTeX as implemented in the amsmath package. Also see the documents in the directory latex/amsmath/.
amsart, amsbook, amsproc
Instructions for the AMS classes used in its journals and monographs. Templates are available for articles, books and proceedings.
theorem
Enhancements to the theorem environments, giving more choice in theorem layout.
ntheorem
Additional enhancements to the theorem environments, including endmark placement and creation of theorem lists.
amsthm
An alternative theorem package which is part of the AMS classes and is different from the theorem package above providing several useful enhancements. A test file (source, output) is available.
amsfonts
Documentation for the AMS mathematical font set. See also the package documentation, the bug list and the frequently-asked questions list.
empheq
Visual markup extensions to amsmath.
mathtools
Additional extensions and improvements to amsmath.
bm
The right way to make bold mathematical symbols.
bbold
Blackboard variant fonts for Computer Modern, with LaTeX support.
dstroke
Double stroke fonts designed to be similar to Computer Modern.
dsfont
Double-stroke maths fonts. Declares the macro \mathds{} to use double-stroke roman fonts. Package option sans uses sans-serif version.
accents
Various extensions for mathematical accents.
euler
Provides a setup for using the AMS Euler family of fonts for math in LaTeX documents.
eufrak
Use the Euler Fraktur symbols.
euscript
Substitute the usual math calligraphic characters with Euler script equivalents.
mathrsfs
This package defines the command \mathscr{ABC} which typesets symbols such as Hamiltonians using the Ralph Smith Formal Script (rsfs) calligraphic fonts.
amsguide
User guide for AMS-TeX (the original plain TeX mathematics package). See also the errata for its manual, The Joy of TeX.
leftidx
Left sub and superscripts in mathematical mode. Their vertical position is adjusted according to the height of the symbol they precede.
fixmath
Uppercase greek letters in italics inside formulas.
mathenv
A collection of mathematical environments with a theme of aligning things in columns.
mdwmath
Contains a few trivial definitions for mathematical things. The main thing is that the \sqrt command for doing square roots has been improved.
esint
Generalization of a number of integral signs using cm fonts.

### Multilingual LaTeX

babel
This package supports multilingual documents in many languages. Some articles on babel that appeared in TUGBoat: tb1202, tb1401, tb1604.
platex
mwcls
Styles supporting polish typographical conventions.
eo
Esperanto support in LaTeX. See other files in the same directory.
inputenc
Allows use of 8-bit character sets in source documents.
cyrillic
Package for using cyrillic fonts.
T2
Another font encoding for Cyrillic.
MLTeX
MLTeX is a modification of TeX version that allows the hyphenation of words with accented letters using ordinary Computer Modern (CM) fonts. There are instructions on how to use MLTeX’ \charsubdef extension with LaTeX.

### Additional or alternative "document" types

beamer
A LaTeX style for presentations using a projector or transparencies. Besides the userguide look at the contents of the examples and solutions (templates) directories.
seminar
A LaTeX style for overhead transparencies and notes. Example 1, Example 2. List of frequently asked questions. List of known bugs.
examdoc
Style for preparing examination papers.
currvita
Style for preparing curriculum vitae. A test file is included.
labels
A package for making sticky labels in LaTeX.
textmerg
Package for creating "text merges" (like wordprocessor mail merge letters) in LaTeX. The directory latex/textmerg contains examples.

### Programming, Package Authoring

at
Allows you to use ‘@’ as a sort of "command-introducing" character, a bit like ‘\’ is already.
doafter
Provides a TeX programmer’s utility \doafter <token> <group> which does the <token> after the group is complete, including any \aftergroup things.
ifthen
Defines if/then/else macros for conditional text.
calc
Package for infix arithmetic notation in LaTeX.
fp
Fixed-point arithmetic package for TeX and LaTeX
keyval
Provides support for writing keyword-style arguments to packages. Used by graphics.
somedefs
A "programmer’s toolkit" for package writers.
fileerr
Implementation of an error handler for "file-not-found" errors.
localloc
Enhanced register-allocation macros.
doc
Literate Programming for package writers -- The combined LaTeX package-code/documentation suite.
docstrip
Package to build stripped-down version of package files for speed.
everysel
This package provides hooks into the NFSS command \selectfont called \EverySelectfont and \AtNextSelectfont analogous to \AtBeginDocument.
everyshi
This package defines a new command \EveryShipout analogous to \AtBeginDocument.
stdclsdv
Macros to interact with sectional divisions of standard LaTeX classes.
twoopt
Enables macros with two optional arguments.
mhsetup
Programming tools used in the mh bundle which also includes empheq and mathtools.
onlyamsmath
Allows class writers to force their users to use the environments provided by the amsmath package instead of plain or standard LaTeX math environments.

### Utilities

checkend
Improves LaTeX error messages with respect to environments which are accidentally left open.
mylatex
Make a format from the preamble of any LaTeX file.
textcmds
Shorthand commands for all the text symbols produced in LaTeX by non-letter ligatures.
ifpdf
A switch to deal with commands specific to pdf output.

## Ancillary Programs

### Bibtex

bibtex is a separate program for managing databases of bibliographic references and selecting for citation in a LaTeX document. It is described in Appendix B of LaTeX: a Document Preparation System and chapter 13 of The LaTeX Companion and online in the documents entitled BibTexing and Designing BibTeX Styles.

The latter document, Designing BibTeX Styles is a guide to customizing the format of the reference list. The non-expert may find it more useful to use the ancillary program makebst which semi-automates the design of a new bibliography style.

natbib is a LaTeX package which allows customization of the citation style in the text (rather than the format of the reference list). It works with almost all bibliography styles, even those which define their own citation macros.

Additional capabilities are provided by the bibunits package which allows defining separate bibliographies for different document parts or multibib which allows referencing multiple bibliographies.

Usage of BibTeX can also be adpted to other ends. A LaTeX style for address databases using BibTeX is also included.

### Makeindex

The makeindex program which provides facilities for generating an index is described in the documents Index Preparation and Processing and the Makeindex user guide.

### Dvips

The full documentation for the dvips DVI -> PostScript translator. N.B. The advice concerning including PostScript graphics has been superceded by the standard LaTeX2e graphics package.

Type I versions of the computer-modern fonts are used by default when invoking dvips in teTeX. Command arguments such as -Pcmz or -Pamz are no longer needed. Type 1 fonts are scaleable so the resulting PostScript does not include bitmapped fonts and is therefore resolution-independent. This is very useful if the postscript is to be scaled up or down or the final destination printer is not known.

### Dvipdfm

A dvi to pdf translator with extra features and its documentation. Web page at http://gaspra.kettering.edu/dvipdfm/.

### Dvipng

A fast dvi to png converter. Developed within the preview-latex project. Information on using dvipng is available from its unix "man" page. Use man dvipng to read it.

### Epstopdf

The epstopdf program converts *.eps files to *.pdf preserving page size and coordinates. Use man epstopdf to read the unix "man" page.

### Xdvi

A dvi viewer. The online documentation for xdvi is available as a unix "man" page. Use man xdvi to read it.

### Texinfo

Texinfo is a macro package for TeX used by the GNU system for producing manuals in different formats including the online info system and printed manuals. Also included is texi2html which will convert texinfo files to html.

## Man pages

Unix man pages included with teTeX range from being little more than a pointer to other documentation to being the main or sometimes unique source of information about a given application. For reference, a full list follows.

A few of these are also available using the info system.

On a terminal window type man application_name (or info application_name) followed by <return> as appropriate. If a man page number appears more than once in the above list you may need to use man section application_name where section refers to what is indicated inside ().

## Other sources of Information

Here are some other useful sources of information on LaTeX, TeX and related programs on the World-Wide Web.