#

Search | Home | Alpha | Brief | Topical | Hierarchical

The TeX Catalogue by Graham Williams

Topic Index by Jürgen Fenn

Last modified: 1 August 2005

This part of the TeX Catalogue eventually will list all packages available from the "Comprehensive TeX Archive Network", or CTAN, for using plain TeX, LaTeX, ConTeXt, and Omega by topic. We also try to give some advice that might help you in getting software and guides not available on CTAN.
New packages on CTAN and package updates are announced on the tex-announce list which is also available as a blog and rss feed.
Every systematical order is arbitrary in some way or another. This is why entries may appear in more than one place. The following order generally tries to keep to that of the "The LaTeX Companion", 1st ed., by Goosens, Mittelbach, and Samarin.
This is very much a work in progress, so suggestions to the maintainer are quite welcome.

## Contents

- References and Manuals
  - Frequently asked questions
  - Introduction to LaTeX "lshort"
  - Usage Guide "l2tabu"
  - Some more guides to (La)TeX
  - Fonts and Graphics
  - Mathematics
  - (La)TeX on Windows
  - Developing (La)TeX Packages
  - (La)TeX on the Web
  - (La)TeX vs. Word Processors
  - The Symbols available in (La)TeX
  - Typesetting Tables
  - Managing Bibliographies
  - TUGboat
  - Typography
  - Tips for using fancyhdr.sty:
  - Tips for using Floats
  - Components of TeX
  - The TeX Directory Structure documentation
  - Last, but not least: Donald E. Knuth's Own Documentation of TeX and Metafont
- Alternative Document Classes
  - KOMA-Script
  - hc
  - Memoir
  - NTG Class
  - Octavo
  - Refman
- Document Structure
  - Document and Section Titles
  - Abstract
  - Table of Contents
  - Changing the Counting of Chapters
  - Crossreferences
  - Footnotes and Endnotes
  - Appendix
- Formatting
  - Enumerating and Listing Items
  - Verbatim Input and Quoting
  - Underlining, Letterspacing etc.
  - Raggedright and Raggedleft Typesetting
  - Formatting Paragraphs
- Page Layout
  - Page Margins
  - Page Headings
  - Landscape Format
- Page Numbers
- Manipulating Counters
- Line and Paragraph Numbers
- Columns in a Page
- Tables
  - Typesetting Long Tables
  - Formatting Decimal Columns
  - Adding some Colour to Tables
  - Misc
- Floats
- Creating Indices and Glossaries
- Bibliography
  - BibTeX
  - Multilingual Bibliographies
  - Multiple Bibliographies in a document
  - Some more additional Packages
  - Bibliography Styles
  - Tools for managing your Bibliography
- Fonts
  - Computer Modern Fonts
  - Extended Computer Fonts
  - Text Companion Fonts
  - The Concrete Fonts
  - CM-super Fonts
  - Latin Modern Fonts
  - The Bera Fonts
  - AMS Fonts for Mathematical Typesetting
  - PostScript Type1 Fonts
  - PostScript Type3 Fonts
  - Metafont and MetaPost
  - Symbol Fonts
  - The "Euro" Currency Symbol €
  - Typesetting Barcode
  - Typesetting Initials
  - Historic Fonts
    - Antiquity and Early Ages
    - Gothic Fonts
    - Bookhand Fonts
    - Runes
  - Typesetting Handwriting
  - Installing Fonts
  - Misc
- PostScript Support
  - dvips
  - psnfss
  - PS-Tricks
  - Misc
- Creating PDF Documents
  - PDFTeX
  - Packages for Special PDF Features
  - Fonts for PDF Files
  - PDF Viewers and Tools
- Combining Documents
- Bundling all Packages necessary for compiling a Document
- Managing different versions of your document
- Managing large Documents
- Multilingual Support
  - Misc: The babel Package
  - Multilingual Bibliographies
  - Arabic
  - Armenian
  - Bangla and Asamese
  - Basque
  - Bengali
  - Burmese
  - Casyl
  - Cherokee
  - Chinese, Japanese, Korean
  - Coptic
  - Croatian
  - Czech and Slovene
  - Cyrillic
  - Devanagari
  - Dutch
  - English
  - Epi-Olmec
  - Ethiopian
  - French
  - German
  - Greek
  - Gurmukhi
  - Hebrew
  - Hungarian
  - Icelandic
  - Indian
  - Inuktitut
  - Italian
  - Japanese
  - Korean
  - Latin
  - Malayalam
  - Manju
  - Mongolian
  - Polish
  - Portuguese
  - Romanian
  - Russian
  - Sanskrit
  - Sinhala
  - Slovene
  - Somali
  - Spanish
  - Swedish
  - Tamil
  - Telugu
  - Tibetan
  - Turkish
  - Ukrainian
  - Vietnamese
  - Misc
- "Office" Applications
  - Writing Letters, Faxes, Memos, and Newsletters
  - Meeting protocols
  - Keeping Lists of Addresses and Mass-Mailing
  - Calendars, Date and Time
  - Money Currency
  - Writing Applications for a Job / CV
  - Business Cards, Labels and Envelopes
  - Leaflets
  - Writing Invoices
  - Presentation Slides
  - Spreadsheets
- Databases
- Science
  - Typesetting Theses and Papers for Journals
  - Typesetting Laboratory Journals
  - Typesetting Physical Units
  - Mathematics
    - Calculating
    - AMS-LaTeX
    - Support for AMS-LaTeX
    - The easy Family of Packages
    - Other Math Macros
    - Math Fonts
    - Math Graphics
  - Statistics
  - Physics
  - Astronomy
  - Aeronautics
  - Chemistry
  - Biology
  - Geophysics
  - Electronics
  - Computer Science
  - Humanities
    - Bibliography
    - Critical Editions
    - Typesetting Dictionaries
    - Misc
  - Psychology
  - Law
  - Economics
  - Phonetics
  - Linguistics
- Including Graphics
- Drawing Graph Paper and Grids
- Drawing Diagrams and Charts
  - Arrow Theoretic Diagrams
  - Barcharts
  - Bezier Curves
  - Bridge Diagrams
  - Drawing Circles
  - Clocks
  - Commutative Diagrams
  - Computer Keyboards
  - Electric Circuit Diagrams
  - Feynman Diagrams
  - Histograms
  - Karnaugh-Maps, and Veitch-Charts
  - Logic Diagrams
  - Nassi-Schneidermann Diagrams
  - Pictex
  - Postscript Macros for Drawing
  - Syntax Diagrams
  - Timing Diagrams
  - Vector Arrows
  - Tools
  - Misc
- Adding some Colour and Shading
- Typesetting Exam Scripts, Quizzes, and Questionnaires
- Music
- Poetry and Drama
- Cooking Recipes
- Documenting Games
- Crossword Puzzles
- CD and MC Covers
- Support for the Blind
- Using different character sets
- Developing and Documenting LaTeX Packages
- (La)TeX Distributions
  - Unices
  - DOS
  - OS/2
  - Windows
  - Macintosh
  - Misc
- ConTeXt
- E-TeX
- Omega
- Editors
- LyX
- MicroIMP
- Previewers and Plugins
- Spelling Checker
- Converters
  - TeX, and Word Processors
  - TeX to HTML
  - HTML to TeX
  - Font Formats
  - Misc
- Using Perl with LaTeX
- Using SGML and XML with LaTeX
- Some more binaries
- Miscellanous Packages

## References and Manuals

You should refer to "lshort" for the basic rules for writing correct LaTeX2e.
On the other hand, the most common mistakes in using LaTeX2e and how to avoid them are listed in Mark Trettin's guide "l2tabu" available in German, English, French, and Italian.
Below are some TeX resources online mostly outside CTAN that deserve to be mentioned, too:
A comprehensive commented reference of the commands available both in LaTeX and the most popular packages can be found at Michael Wiedmann's tex-refs project.
Herbert Voß has gathered together a rather comprehensive collection of Tips & Tricks on (La)TeX.
There also is Norman Walsh's help for Plain TeX, LaTeX, BibTeX, MakeIndex, and SliTeX.
Tutorials on TeX by TUG India are available online, or as PDF. There also is Peter Flynn's Beginner's Introduction available both online and for download.
For news on the development of LaTeX see the LaTeX3 Project.
The ConTeXt project, too, has a homepage of its own.
For practical hints on how to use LaTeX in general as well as on particular packages refer to the "Frequently Asked Questions" lists of local TeX User Groups available on the WWW in Czech / Slowak, Dutch, English, French, German, Greek, Italian, Polish, Spanish, or on CTAN:

### Frequently asked questions:

- faq-de - auf Deutsch
- faq-es - en Español
- faq-fr - en Français
- faq - in English

### Introduction to LaTeX "lshort":

- lshort-bulgarian - Bulgarian version of A Short Introduction to LaTeX2e
- lshort-english - A (Not So) Short Introduction to LaTeX2e
- lshort-finnish - Finnish version of A Short Introduction to LaTeX2e
- lshort-french - French version of A Short Introduction to LaTeX2e
- lshort-german - German version of A Short Introduction to LaTeX2e: LaTeX2e-Kurzbeschreibung
- lshort-italian - Italian translation of the (Not So) Short Introduction to LaTeX
- lshort-japanese - Japanese version of A Short Introduction to LaTeX2e
- lshort-mongolian - Mongolian version of A Short Introduction to LaTeX2e
- lshort-polish - Introduction to LaTeX in Polish
- lshort-portuguese-br - Introduction to LaTeX in Portuguese (Brazil)
- lshort-portuguese - Introduction to LaTeX in Portuguese
- lshort-russian - Russian version of A Short Introduction to LaTeX2e
- slovak-lshort - Slovak translation of "Not so Short Introduction ..."
- lshort-spanish - Spanish version of A Short Introduction to LaTeX2e
- lshort-ukr - Ukrainian version of the LaTeX introduction

### Usage Guide "l2tabu":

- l2tabu - Obsolete packages and commands (in German)
- l2tabu-english - English translation of l2tabu, an essential guide on the dos and don'ts of LaTeX2e
- l2tabu-french - French translation of l2tabu
- l2tabu-italian - Italian translation of l2tabu

### Some more guides to (La)TeX:

- beginlatex - A comprehensive beginner's guide to LaTeX by Peter Flynn
- catalogue - The TeX Catalogue of what's available on CTAN. You are just reading it.
- french-translations - French translation project for documentation of LaTeX packages
- gentle - A Gentle Introduction to TeX
- gentl-gr - Modern Greek translation of the Gentle Introduction to TeX
- latex2e - Documentation on LaTeX2e in OS/2 hypertext format and html
- russian-help - LaTeX help in Russian
- simplified-latex - A Simplified Introduction to LaTeX
- texbuch - A summary in German of D. E. Knuth's `TeXBook' by Fritz Cremer
- texmalli - A quick Finnish introduction to using LaTeX

### Fonts and Graphics:

- anleitung - A German introduction by Jens Weissenburger to using True Type Fonts with LaTeX on a MikTeX system with WinEdT
- comp-fonts-faq - Frequently Asked Questions from the comp.fonts newsgroup
- chroma - A reference book of LaTeX colors
- fonteinf - A German translation of a guide by Javier Bezos on how to use fonts in LaTeX
- fontinstallationguide - How to install new fonts
- fontname - Karl Berry's scheme for naming fonts in TeX
- grafik - A guide by Marco Duebendorfer on how to produce EPS graphics files for use with LaTeX on MS Windows platforms
- grfguide - Guide to using graphics in LaTeX, including documentation on various packages including color and graphicx
- metafp - Some Experiences in Running METAFONT and MetaPost
- MetaPost Examples - Example drawings using metapost
- neufont - A guide by Bjoern Lorenz on how to install new fonts (in German)
- tipos - Description of fonts for TeX in Spanish
- True Type - Harald Harders' guide on how to use TrueType fonts with teTeX, and dvips

### Mathematics:

- amslatexprimer - An introduction to AMS-LaTeX by Philip S. Hirschhorn
- voss-mathcol - Typesetting mathematics in colour
- voss-mathmode - A comprehensive review of mathematics in (La)TeX

### (La)TeX on Windows:

There are two guides for installing LaTeX on Windows in German in the first place: Both Joachim Schlosser, and Viktor Witting, Maik Scherer, Florian Hibler, Johannes Schubert, Mathias Wasserthal, and Andreas Hirsch provide rather good guides to installing a complete MiKTeX system on Windows.

- anleitung - A German introduction by Jens Weissenburger to using True Type Fonts with LaTeX on a MikTeX system with WinEdT
- win95-guide - An installation-guide for a complete TeX-System consisting of MiKTeX, WinEdt and GhostView

### Developing (La)TeX Packages:

- How to Package Your LaTeX Package - Tutorial on writing .dtx and .ins files

### (La)TeX on the Web:

- acrotex - How to generate PDF with TeX
- webguide - Brief Guide to LaTeX Tools for Web publishing

### (La)TeX vs. Word Processors:

LyX is an advanced alternative to word processors which is based on LaTeX.
You may also input text using OpenOffice Writer and later convert it to LaTeX, or HTML with Henrik Just's Java-based Writer2LaTeX.
The TUG offers an overview of converters from PC Textprocessors to LaTeX and vice versa. Some of the converters between LaTeX and word processor formats can be found on CTAN.

- latex4wp - A LaTeX guide specifically designed for word processor users

### The Symbols available in (La)TeX:

- symbols - Comprehensive list of LaTeX symbols

### Typesetting Tables:

- tabsatz - A tutorial by Axel Reichert on typessetting tables with a some examples (in German)

### Managing Bibliographies:

- tamethebeast - A manual about bibliographies and especially BibTeX

### TUGboat:

- tugboat-toc - The complete accumulation of TUGboat tables of contents

### Typography:

- typografie - A tutorial on typography by Axel Reichert (in German)

### Tips for using fancyhdr:

- fancyfolien - A guide by Hans Friedrich Steffani on how to use the fancyhdr package (in German)

### Tips for using Floats:

- gleitobjekte - Tutorial from a DANTE meeting in November 1997 on floats and their placement, captions, inclusion of graphics, lettering of graphics, layout of tables and large amounts of numerical data

### Components of TeX:

- components - An introduction to the components and files users of TeX get in contact with by Joachim Schrod

### The TeX Directory Structure documentation:

- tds - The TeX Directory Structure documentation

### Donald E. Knuth's Own Documentation of TeX and Metafont:

- knuth - Knuth's own documentation, including the TeX book and the MetaFont book
- tex98 - The 1998 cycle of changes to TeX from Knuth

## Alternative Document Classes

These class files provide an alternative to the usual LaTeX article, report, or book classes. They are used to change document layout in general and they usually provide some special features, as well. You should check the class file documentation first to make sure whether you can use options or commands that are part of the respective class file before considering the use of one of the packages listed below in alphabetical order.
There are some alternatives to letter.cls, too, for writing letters and faxes.
There are also classes for typesetting theses and papers for scientific journals. Some more classes which also might be of interest to general users of TeX are listed under Science.

### KOMA-Script:

- koma-script - A drop-in replacement for the article/report/book/letter classes with emphasis on European rules of typography and paper formats as laid down by Tschichold
- typearea - Set page margins; part of the koma-script bundle

### HC:

- hc - Provides replacements for the default LaTeX classes, based upon the koma-script bundle and the seminar class

### Memoir:

- memoir - Typeset fiction, non-fiction and mathematical books; provides a variety of predefined page, chapter and caption styles and easy means of creating new ones

### NTG Class:

- ntgclass - Versions of the standard LaTeX article and report classes, rewritten to reflect a more European design

### Octavo:

- octavo - A modification of the standard LaTeX book class to typeset books following classical layout and design principles, implementing many of the proposals and insights of especially Jan Tschichold and Hugh Williamson

### Refman:

- refman - A document class for writing technical reference manuals offering a wide left margin for notes to the reader, like some of the manuals distributed by Adobe, available for articles and reports

## Document Structure

### Document and Section Titles:

- alnumsec - Alphanumeric section numbering similar to alphanum, but you may use the standard LaTeX sectioning commands
- alphanum - Permits alphanumeric section numbering
- authblk - A LaTeX2e package to redefine the \author command to work as normal or to allow a footnote style of author/affiliation input
- bsheaders - Implements chapter headers in sans-serif and bounded by lines \textwidth wide, both above and below the header itself.
- sectsty - Control sectional headers
- titlefoot - Add special material to footer of title page
- titleref - Cross-reference section (and chapter, etc) titles and captions just like \ref and \pageref
- titles - Defining macros that typeset the titles of books, journals, etc. and handle following spacing and punctuation intelligently
- titlesec - Select alternative section titles
- titletoc - Alternative headings for toc/tof/tol
- titling - Control over the typesetting of the \maketitle command

### Abstract:

- abstract - Control the typesetting of the abstract environment

### Table of Contents:

- minitoc - Produce a table of contents for each chapter
- multitoc - Set table of contents in multiple columns
- shorttoc - Table of contents with different depths
- titletoc - Alternative headings for toc/tof/tol
- tocbibind - Add bibliography/index/contents to Table of Contents
- tocloft - Control table of contents, figures, etc.
- tocvsec2 - Section numbering and table of contents control

### Changing the Counting of Chapters:

- alnumsec - Alphanumeric section numbering similar to alphanum, but you may use the standard LaTeX sectioning commands
- anonchap - Make \chapter s be typeset like sections
- alphanum - Permits alphanumeric section numbering
- koma-script - A drop-in replacement for the article/report/book classes with emphasis on European rules of typography and paper formats as laid down by Tschichold
- tocvsec2 - Section numbering and table of contents control

### Crossreferences:

- cwebhy - Insert hyperlinks for included files
- drftcite - Print the tags instead of the numbers for \cite and \bibitem
- lastpage - Reference last page for Page N of M type footers
- prettyref - Additional functionality for the LaTeX2e label--reference mechanism, allowing the "preformat" of all types of labels; compatible with hyperref and other packages
- refcheck - Check references (in figures, table, equations, etc)
- showkeys - Show label, ref, cite and bib keys
- titleref - Cross-reference section (and chapter, etc) titles and captions just like \ref and \pageref
- totpages - Access last page number and page mark of last page
- ut-backref - A version of bachref which adds to bibliography entries an entry saying where this particular reference was cited
- varioref - Intelligent page references
- xr - References to other LaTeX documents

### Footnotes and Endnotes:

There are some packages for working on critical editions for those interested in the Humanities.

- authblk - A LaTeX2e package to redefine the \author command to work as normal or to allow a footnote style of author/affiliation input
- endnotes - Accumulates footnotes and places them at the end of the document
- fixfoot - Multiple use of the same footnote text
- fnpara - Typeset footnotes in run-on paragraphs, instead of one above another
- footbib - A package to put bibliographic references as footnotes
- footmisc - Captures as package options much (if not all) of the functionality of the various other footnote packages
- footnpag - Allows footnotes on individual pages to be numbered from 1, rather than being numbered sequentially through the document
- ftn - LaTeX document-style option to make footnotes available in any environment, except inside floats
- ftnright - Footnotes in two column documents
- manyfoot - Add footnote levels to the standard LaTeX's footnote mechanism
- nccfoots - Implements commands for generating footnotes marked by hands
- pagenote - Provides tagged notes on a separate page (also known as "end notes")
- savefnmark - Save name of the footnote mark for reuse
- titlefoot - Add special material to footer of title page
- yafoot - Enclose footnote numbers within a page; control the position of footnotes; and make footnotes double-columned

### Appendix:

- appendix - Extra control of appendices

## Formatting

### Enumerating and Listing Items:

- enumerate - Adds an optional argument to the enumerate environment which determines the style in which the counter is printed
- enumitem - Control layout of itemize, enumerate, description
- etaremune - Implements the etaremune environment which is similar to the enumerate environment, except that labels are decreasing instead of increasing, similar to the revnum package
- expdlist - Provides additional features to the LaTeX description environment, such as changing the left margin, or breaking a list for a comment without touching any counters
- mdwtools - A collection of tools that also includes support for list handling
- multenum - Multi-column enumerated lists
- paralist - Provides enumerate and itemize environments that can be used within paragraphs to format the items either as running text or as separate paragraphs with a preceding number or symbol
- revnum - Provides a reverse-enumerate environment where all items are numbered in reverse order

### Verbatim Input and Quoting:

- alltt - A verbatim environment other commands, and environments can appear within
- attrib - A LaTeX package defining \attrib, which attributes block elements, for example when citing a reference after a block quotation
- bbfig - A Bourne shell script that prints its input surrounded by its bounding box
- csquotes - Provides commands for smart, or "context-sensitive" quoting
- eplain - extended version of the plain format
- fancyvrb - Sophisticated handling of verbatim text
- listings - Typeset programming code within LaTeX using different styles, e.g., default is bold for keywords, italic for comments and no special style for strings, including support for hyperref
- moreverb - Extended verbatim
- quotchap - Creating decorative chapter headings with quotations
- quotes - Translates plain text input into English quotes "..."
- stdpage - Standard pages with n lines of at most m characters each
- url - Verbatim with URL-sensitive line breaks
- verbatim - The LaTeX verbatim environment
- vrb - Verbatim macros via plain TeX

### Underlining, Letterspacing etc.:

- soul - Hyphenation for letterspacing, underlining, and more
- subscript - Provides the textsubscript command (analogous to textsuperscript in standard LaTeX2e)
- tracking - Automatically adjust spaces between symbols in words or phrases to fit them into a specified length
- truncate - Truncate text to a specified width
- ulem - Package for underlining
- umoline - Underlines text allowing line breaking
- underbracket - Draw brackets to underline (song) text
- underlin - Package for underlining

### Raggedright and Raggedleft Typesetting

- ragged - Ragged left and ragged right options
- ragged2e - Defines new commands which set ragged text and are easily configurable to allow hyphenation. raggedr is part of this package.

### Formatting Paragraphs

- hanging - Facilitates the typesetting of hanging paragraphs

## Page Layout

### Page Margins:

- a4 - Obsolete support for A4 paper sizes
- a4wide - Increases width of printed area of an a4 page
- a5 - Obsolete support for a5 paper size
- a5comb - Support for a5 paper sizes superceded by the
- anysize - A simple package to set up document margins (obsolete)
- chngpage - Change the page layout in the middle of a document
- fullpage - Sets all 4 margins to be either 1 inch or 1.5 cm, and specifies the page style
- geometry - Flexible and complete interface to document dimensions
- isostds - Typeset ISO International Standard documents
- mparhack - Implements a workaround for the LaTeX bug that marginpars will sometimes come out at the wrong margin
- rmpage - Change page layout parameters in LaTeX
- savetrees - Pack as much text as possible onto each page of a LaTeX document
- sober - Reduces the amount of white space on the page by reducing the size of various skips
- stdpage - Standard pages with n lines of at most m characters each
- textfit - Package to support fitting of text to a given width or height by scaling the font
- typearea - Set page margins; part of the koma-script bundle
- vmargin - Set various dimensions

### Page Headings:

- fancyhdr - Extensive control of page headers and footers in LaTeX2e
- fancyfolien - A guide by Hans Friedrich Steffani on how to use the fancyhdr package (in German)
- rplain - A predecessor to fancyhdr, redefining the plain pagestyle

### Landscape Format:

- lscape - Place selected parts of a document in landscape
- twoinone - Print two pages on a single page (a4paper landscape)
- twoupe - Print two virtual pages on each physical page
- twoupltx - Print two virtual pages on each physical page

## Page Numbers

- chappg - Package for page numbering by chapter
- count1to - Set count1 to count9 for selecting pages with a driver or for accessing certain pages in a document
- lastpage - Reference last page for "Page N of M" type footers
- pageno - A package that can re-define the plain page style under the control of options, so you can have page numbers: at the top or bottom of the page; in the inside corner, outside corner, or in the middle

## Manipulating Counters

- alphalph - Converting numbers to letters, like \number but the expansion consists of lowercase and uppercase letters respectively
- chngcntr - Change the resetting of counters
- count1to - Set count1 to count9 for selecting pages with a driver or for accessing certain pages in a document
- romanneg - Roman neg.
- romannum - Changes LaTeX generated numbers to be printed with roman numerals instead of arabic digits
- zahl2string - Format numbers as German words

## Line and Paragraph Numbers

There are packages for working on critical editions.

- ledpar - An extension of ledmac enabling parallel typesetting in columns or on facing pages and line numbering.
- lineno - Line numbers on paragraphs
- numline - Macros for numbering lines
- vruler - A package for adding a vertical numbering to the general text so that the text can be properly referenced. The vertical ruler can be scaled and moved freely

## Columns in a Page

- balance - Balanced two-column mode
- cuted - Mixing onecolumn and twocolumn modes at any place of page
- fix2col - Fix miscellaneous two column mode features
- flushend - Columns balancing at last page
- ftnright - Footnotes in two column documents
- mhequ - Multicolumn equations, tags, labels, sub-numbering
- midfloat - Mixing onecolumn and twocolumn modes at any place of page
- multicol - Intermix single and multiple columns
- parallel - Typesetting two languages side-by-side

## Tables

See also packages for floats.
There are guides to typesetting tables.
There is Calc2LaTeX for converting OpenOffice spreadsheets to LaTeX tables.

### Typesetting Long Tables:

- longtable - Support for tables longer than a page. Generally easier to use, and more flexible than supertabular
- ltxtable - Longtable and tabularx merge
- supertabular - A multi-page tables package
- xtab - An extended version of supertabular to automatically break tables across pages and includes extra functionality

### Formatting Decimal Columns:

- comma - A flexible package that allows commas (or anything else) to be inserted every three digits in a number, as in 1,234
- dcolumn - Align on the decimal point of numbers in tabulars
- numprint - Print numbers with a separator every three digits
- rccol - Provides right-centered numbers; furthermore, rounding to the desired precision is possible
- warpcol - Defines a tabular column type for formatting numerical columns in LaTeX

### Adding some Colour to Tables:

There are packages for colour and shading in general.

- colortab - Shade, or colour cells of tables and halign
- colortbl - Allows rows and columns to be coloured, and even individual cells
- shadbox - Shade the background of any box (text, figure, table, etc.)

### Misc:

- array - Arrays and tables with formatted columns
- Array Maker - A program for making latex and xypic arrays
- autotab - Generating tabular setups
- blkarray - Extended array and tabular
- booktabs - Nicer layout of tables
- cellular - Cellular table construction
- csvtools - Allows you to repeatedly perform a set of LaTeX commands on data in each row of a comma separated variable (CSV) file
- easybmat - Writing block matrices with equal column widths or equal rows heights or both, with various kinds of rules between rows and columns
- easyeqn - Introduces some equation environments that simplify writing of equations
- easytable - Tables with equal column widths or equal rows heights or both, with various kinds of rules (lines) between rows and columns
- Excel-to-LaTeX - Convert Excel spreadsheets to LaTeX tables (works with Excel up to Excel 97)
- ftcap - Allows \caption at the beginning of a table-environment
- hhline - Better horizontal lines in tabulars and arrays
- hvdashln - Definitions of horizontal and vertical dashed lines for the array and tabular environment
- LaTable - A near-WYSIWYG editor for LaTeX tables
- ltablex - Modifies the tabularx environment to combine the features of the tabularx package (auto-sized columns in a fixed width table) with those of the longtable package (multi-page tables).
- multirow - Creates tabular cells spanning multiple rows
- savefnmark - Save name of the footnote mark for reuse
- tabls - Better vertical spacing in tables and arrays (tabular lineskip)
- tabularx - Tabulars that widen automatically
- tap - An easy TeX macro package for typesetting complex tables
- threeparttable - Tables with captions and notes all the same width

## Floats

See also the packages for including graphics and tables.

- algorithm2e - An environment for writing algorithms, defining an algorithm as a floating object
- algorithms - Defines a floating algorithm environment
- captcont - Retain float number accross several floats
- caption - Extends caption capabilities for figures and tables
- caption2 - Newer version of the caption package
- capt-of - Captions on more than floats
- ccaption - Continuation headings and legends for floats
- dpfloat - Support for double-page floats
- endfloat - Move floats to the end with markers where they belong
- figcaps - Collect figure captions for later printing
- float - Improved interface for floating objects (defining your own floats and improving the behaviour of the old ones)
- floatfig - Allows text to be wrapped around figures
- floatflt - Float text around figures and tables which do not span the full width of a page, improving upon floatflt
- floatrow - Extension or addition for float package which offers possibilities to put floats side by side, to put a caption beside a float. All floats of one type appear in one layout.
- hangcaption - Defines a variant of the caption command to produce captions with hanging indentation
- here - Provides the H option for floats in LaTeX to mean that the float should really be placed here
- hvfloat - Rotating caption and object of floats in different ways
- nonfloat - Non-floating table and figure captions
- photo - A float environment for photographs
- refcheck - Check references (in figures, table, equations, etc)
- rotfloat - A package for rotating floats
- stfloats - Floating baselineskip, footnotes below the floats, dblfloats at bottom
- subfigure - Generates sub-figures within one normal figure
- subfloat - Enables sub-numbering of different floats (figures and tables) similar to the subequations divided into subfigures
- topcapt - Place captions above figures and tables
- wrapfig - Produces figures which text can flow around

## Creating Indices and Glossaries

- abbrevs - A LaTeX package defining "abbreviation macros," which expand to defined text and insert following space intelligently, based on context
- acronym - Ensures that all acronyms used in the text are spelled out in full at least once; provides an environment to build a list of acronyms
- addindex - A C/Lex program for adding index entries to LaTeX document
- appendix - Extra control of appendices
- authorindex - A package to generate a list of all authors cited in a document along with a list of pages where these citations occur
- esindex - Typset index entries in Spanish documents
- forindex - Generating and deleting \index entries automatically
- gloss - Create glossaries using BibTeX
- glosstex - Atomatic preparation of glossaries; combines the functionality of acronym and nomencl
- index - Extended index for LaTeX including multiple indexes
- juraabbrev - Handle abbreviations for typesetting (German) juridical documents
- makeglos - Include a glossary into a document
- makeidx - Standard LaTeX package for creating indexes
- makeindex - A general purpose hierarchical index generator
- nomencl - Produce lists of symbols as in nomenclature using the makeidx program
- splitindex - Unlimited number of indices
- toolbox - A package for (La)TeX which provides some macros which are convenient for writing indices, glossaries, or other macros

## Bibliography

For showing \cite and \bibitem crossreferences use the drftcite package.

### BibTeX:

- amsrefs - A LaTeX-based replacement for bibtex
- bibtex - Bibliography management for LaTeX
- bibtex8bit - A fully 8-bit adaptation of bibtex 0.99
- camel - Comprehensive bibliography manager (prototype citation engine for LaTeX3) that will become BibTeX 1.0 on release
- macbibtex - A port of bibtex which is distributed with OzTeX for the Macintosh OS

### Multilingual Bibliographies:

- babelbib - Generate multilingual bibliographies in cooperation with babel

### Multiple Bibliographies in a document:

- bibtopic - Include multiple "by topic" bibliographies in a document
- bibunits - Multiple bibliographies in one document; compatible with koma-script
- chapterbib - Separate bibliography for each \include file

### Some more additional Packages:

- authorindex - A package to generate a list of all authors cited in a document along with a list of pages where these citations occur
- backref - Bibliographical back referencing
- backrefx - Bibliographical back referencing (obsolete)
- bibcheck - Check on references to items in thebibliography
- bibhtml - Consists of a Perl script and a BibTeX style file, which together allow you to compile a bibliography for a collection of HTML files
- bibsort - Sort a bibliography
- chbibref - Change the Bibliography/References title
- cite - Supports compressed, sorted lists of numerical citations
- citeref - Support backward references in the bibliography
- compactbib - Allows many thebibliography environments with continuous numbering
- easybib - Macro package for writing custom bibliographies with a simple AMS-TeX-like syntax
- eplain - extended version of the plain format, adding support for bibliographies, tables of contents, enumerated lists, verbatim input of files, numbered equations, tables, two-column output, footnotes and commutative diagrams
- footbib - Put bibliographic references as footnotes
- listbib - Lists contents of bibtex files for archival purposes
- hellas - Typeset bibliographies which include Greek using bibtex
- notoccite - Prevent erroneous numbering of cites when using BibTeX/unsrt
- rangecite - Will turn a range of citations into something like [1..3]
- saferef - Provides a means of expressing `typed' references (as it were) within a document
- tocbibind - Add bibliography/index/contents to Table of Contents
- ut-backref - A version of bachref which adds to bibliography entries an entry saying where this particular reference was cited

### Bibliography Styles:

For using bibtex for working in the humanities see the bibliography section there.

- achemso - LaTeX and BibTeX style for American Chemical Society
- achicago - Produces author-date citations based on The Chicago Manual of Style
- achicago-bst - Produces bibliographies based on The Chicago Manual of Style, requires the achicago package
- aguplus - Styles for American Geophysical Union
- authblk - Redefines the \author command to work as normal or to allow a footnote style of author/affiliation input
- authorindex - Generates a list of all authors cited in a document along with a list of pages where these citations occur
- beebe - A collection of TeX-related bibliographies and BibTeX style files
- bibarts - A package to assist in making bibliographical lists common in the arts
- bib-fr - French translation of classical BibTeX styles
- biblio - An extensive collection of bibtex bibliographies on many topics and for many journals
- biblist - bibtex styles by Joachim Schrod bibtex bibliographies on many topics and for many journals
- chicago - A bibliography style
- chem-journal - Various bibtex formats for journals in Chemistry, including Reviews in Computational Chemistry, Journal of Physical Chemistry, Journal of Computational Chemistry, and Physical Chemistry Chemical Physics
- custom-bib - Generates customized bibtex bibliography styles from a generic file using docstrip, includes support for the harvard style
- dinat - Bibliography style files intended for texts in german in accordance with the german DIN 1505, parts 2 and 3
- germbib - German variants of standard BibTeX styles
- harvard - The Harvard bibliography style family
- jurarsp - A BibTeX style for quoting court decisions, and official papers as required in German legal texts
- jtbnew - BibTeX style for Journal of Theoretical Biology
- jurabib - bibtex databases for German legal texts in the first place, but also of interest to everyone else working in the humanities
- natbib - Bibliography style with author-year and numbered references
- revtex - Styles for various Physics Journals

### Tools for managing your Bibliography:

- barracuda - A bibtex database manager that allows loading, editing, merging, sorting, searching, printing and saving of BibTeX database files
- bbl2html - Convert a LaTeX .bbl file to formatted html code
- bibex - Automates the extraction of bibliographic references from BibTeX databases
- bibhtml - Consists of a Perl script and a BibTeX style file, which together allow you to compile a bibliography for a collection of HTML files
- bib2xhtml - A program that converts BibTeX files into HTML (specifically XHTML 1.0)
- bibarts - A package to assist in making bibliographical lists common in the arts
- bibdb - bibtex bibliography manager fow MS-Windows and MS-DOS
- bibfind - Reads your bib file and prints those references that match your search string
- bibindex - A stand-alone tool for indexing BibTeX documents to be searched using the corresponding biblook tool
- biblook - A stand-alone tool for searching BibTeX documents which have been indexed by bibindex
- biblio-perl - A program for preprocessing bibliographic references (written in Perl)
- biblios - A MS-Windows95 tool that uses the CGI protocol so that BibTeX files can be managed remotely using an HTTP-server on the server side and a Web-browser on the client side
- bibtool - Command line manipulation of BibTeX files
- bibtools - Bib management tools, including a bib2html converter, and a style file for listing papers on a homepage/ cv
- bibweb - Automatically retrieve bibliography from MathSciNet
- bidstobibtex - A tool to take input from a BIDS email message (generated using one of the downloading formats) to BibTeX
- btOOL - Perl library for parsing and processing BibTeX files
- citation - A bibliographical conversion program
- pybliographer - A comprehensive tool for managing bibliographic databases on *ix platforms
- tex2bib - Converts bibitems embedded in a document to bib format
- tex2ltx - Useful for converting plain TeX (AMS) files into AMS-LaTeX and convert plain AMS-TeX bibliographic references into BibTeX

## Fonts

See also PostScript Support, and Creating PDF Documents.
PostScript Type 1, and Type 3 Fonts are listed in this section.
There are guides on using different types of fonts.

### Computer Modern Fonts:

- aifont - Virtual fonts and other related files for remapping the BSR/YandY/AMS Type 1 Computer Modern fonts
- bbm - "Blackboard-style" cm fonts
- bbm-macros - LaTeX support for bbm
- bluesky - Computer Modern family in format
- cm - Computer Modern fonts; the typical (La)TeX typeface designed by Donald Knuth
- cmcyr - Computer Modern fonts extended with Russian letters, in MetaFont sources and ATM Compatible
- cmextra - Extra Computer Modern fonts, from the American Mathematical Society
- cmolddig - A virtual fount setup for using old style digits by default with the OT1 encoded Computer Modern Roman upright founts
- cmpica - A Computer Modern Pica variant
- cmps - Versions of PostScript fonts, from Blue Sky and Y&Y
- cmsd - A package including additional fd files, providing an alternative interface to the CM Sans Serif boldface fonts
- cmtt - A package for handling the `cmtt' font better
- hfbright - The hfbright fonts (Type1 version of the CM Bright fonts)
- zefonts - Virtual T1 encoded Computer Modern fonts based on (OT1) Computer Modern, Times, and Helvetica fonts, intended to simulate `dc' fonts

### Extended Computer Fonts:

- ec - The European Computer Modern Fonts supporting the complete LaTeX T1 encoding defined at the 1990 TUG conference hold at Cork/Ireland
- ecc - The MetaFont sources and tfm files of the European Concrete Fonts. This is the EC implementation of Knuth's Concrete
- eco - A set of font metric files and virtual fonts for using the ec fonts with oldstyle numerals fonts, including also the corresponding text companion fonts
- ec-plain - A plain-like format using the ec fonts including an extended math italic font (exmi) providing upright greek letters
- ecpk - No description available
- fontenc - Standard package for activating ec fonts
- hfoldsty - Provides virtual fonts for using oldstyle figures with the European Computer Modern fonts. It does a similar job as the eco package, but includes a couple of improvements
- t1enc - Obsolete package for activating ec fonts

### Text Companion Fonts:

- ecc - The MetaFont sources and tfm files of the European Concrete Fonts. This is the EC implementation of Knuth's Concrete fonts, including also the corresponding text companion fonts
- textcomp - The Text Companion fonts which provide many text symbols (such as baht, bullet, copyright, musicalnote, onequarter, section, and yen) in the TS1 encoding

### The Concrete Fonts:

- 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. The files support OT1, T1, TS1, and Concrete math including AMS fonts
- cc-pl - Polish extension of Computer concrete fonts (MetaFont sources).
- cc-plps - Polish extension of Computer concrete fonts in Type1 format
- concrete - Concrete Roman fonts, designed by Donald E. Knuth, originally for use with Euler math fonts
- concrete-wrap - A wrapper to load up the appropriate packages to use the concrete fonts
- ecc - The MetaFont sources and tfm files of the European Concrete Fonts. This is the EC implementation of Knuth's Concrete fonts, including also the corresponding text companion fonts
- euler - Provides a setup for using the AMS Euler family of fonts for math in LaTeX documents

### CM-super Fonts:

- cm-super - CM-Super family of fonts in type 1 format

### Latin Modern Fonts:

- lm - Latin modern fonts in type 1 format

### The Bera Fonts

- bera - Contains the Bera Type 1 fonts, and a zip archive containing files to use the fonts with LaTeX

### AMS Fonts for Mathematical Typesetting:

- amsfonts - Augments the standard set normally distributed with TeX, including: extra mathematical symbols; blackboard bold letters (uppercase only); fraktur letters; subscript sizes of bold math italic and bold Greek letters; subscript sizes of large symbols such as sum and product; added sizes of the Computer Modern small caps font; cyrillic fonts (from the University of Washington); Euler math fonts
- euler - Provides a setup for using the AMS Euler family of fonts for math in LaTeX documents

### PostScript Type1 Fonts:

- brushscr - BrushScript fonts including pbsi, a Type-1 PostScript font containing BrushScript Italic characters that simulates hand-written characters
- cmbright - A family of sans serif fonts for TeX and LaTeX, based on Donald Knuth's CM fonts. It comprises OT1, T1 and TS1 encoded text fonts of various shapes as well as all the fonts necessary for mathematical typesetting, incl. AMS symbols. This collection provides all the necessary files for using the fonts with LaTeX
- mf2pt1 - Produce PostScript Type 1 fonts from MetaFont source

### PostScript Type3 Fonts:

- mf2pt3 - Perl script to generate PostScript Type 3 fonts from MetaFont sources by processing MetaPost output

### TrueType Fonts:

- freetype - A free, full-featured TrueType rasterizer library
- ttf2mf - MS program to convert True Type to metafont
- ttf2pk - This tool rasterizes the glyph outlines of a TrueType font into a bitmap font in PK format as part of the FreeType package
- ttf2pt1 - A tool that converts True Type fonts into PS Type 1 fonts
- ttf2tex - A Bash script which will create all files neccessary to use TrueType fonts with teTeX from a set of TTF files
- ttf2tfm - Extracts the metric and kerning information of a TrueType font and converts it into metric files usable by TeX (quite similar to afm2tfm which is part of the dvips package)
- ttftogf - Convert MS-Windows True Type fonts to GF format

### Metafont and MetaPost:

- emp - A package for encapsulated MetaPost pictures in LaTeX
- meta-mode - A GNU Emacs Lisp package that implements a major mode for editing MetaFont or MetaPost sources
- metapost - A tool based on MetaFont for producing precise technical illustrations, creating scalable PostScript instead of bitmaps
- metapost-examples - Example drawings using metapost
- mf2pt1 - Produce PostScript Type 1 fonts from MetaFont source
- mf2pt3 - Perl script to generate PostScript Type 3 fonts from MetaFont sources by processing MetaPost output
- threed - Create animations of 3-dimensional objects (such as polyhedra) in metapost

### Symbol Fonts:

The PostScript symbol fonts Zapf Dingbats are supported by the pifont package which is part of psnfss.

- astro - Astronomical (planetary) symbols
- bbding - Symbol font including many Zapf dingbats
- dingbat - A dingbat symbol font
- genealogy - A simple compilation of the genealogical symbols found in the wasy and `gen' font
- gensymb - Generic symbols for both text and math mode
- harpoon - Extra harpoons, using the graphics package
- hoekwater - Fonts originally created in MetaFont, transformed to PostScript by Taco Hoekwater; includes logo, manfnt, rsfs, stmaryrd, wasy, wasy2, xipa
- ifsym - Symbols for alpinistic, electronic, meteorological, geometric etc. usage
- manfnt - LaTeX support for the TeX book symbols
- marvosym - Martin Vogel's Symbole (marvosym) font
- marvosym-mac - A Macintosh version of the marvosym font
- rsfs - Contains MetaFont sources for fonts of uppercase script letters for use as symbols in scientific and mathematical typesetting, in contrast to the informal script fonts such as that used for the `calligraphic' symbols in the TeX math symbol font
- stmaryrd - St Mary Road symbols for functional programming
- stmaryrd-ps - PostScript version of the stmaryrd fonts
- textcomp - The Text Companion fonts which provide many text symbols (such as baht, bullet, copyright, musicalnote, onequarter, section, and yen) in the TS1 encoding
- texlogos - Ready-to-use LaTeX logos
- tipa - Fonts and macros for IPA phonetics characters
- wasy - The wasy fonts (Waldis symbol fonts)
- wasy2 - The wasy fonts (Waldis symbol fonts)
- wasy2-ps - Converted (PostScript) outlines of the wasy fonts
- wasysym - Extra characters from the Waldis symbol fonts
- wsuipa - Style for using International Phonetic Alphabet fonts
- wsuipa2tipa - A filter that translates an old LaTeX document, replacing all wsuipa font commands with tipa font commands

### The "Euro" Currency Symbol €:

- euro - Converts arbitrary national currency amounts using the Euro as base unit, and typesets monetary amounts in almost any desired way; automatically. Conversion rates for the so-called Euro-zone countries are already built-in
- eurofont - Provides a command that prints a euro symbol
- europs - Provides access to Adobe's Euro currency symbol fonts from LaTeX
- eurosans - Provides a convenient interface for using the free Adobe Type 1 PostScript Euro fonts
- eurosym - The new European currency symbol for the "Euro" implemented in Metafont, using the official European Commission dimensions, and providing several shapes
- marvosym - Martin Vogel's Symbole (marvosym) font
- marvosym-mac - A Macintosh version of the marvosym font
- textcomp - The Text Companion fonts which provide many text symbols (such as baht, bullet, copyright, musicalnote, onequarter, section, and yen) in the TS1 encoding

### Typesetting Barcode:

- barcode2 - Typesetting Barcode
- barcodes - Fonts for making barcodes
- code128 - A set of barcode macros for the Code 128 standard
- ean - Font for making EAN barcodes
- wbarcode - Typeset common (and less common) barcodes with TeX

### Typesetting Initials:

- dropcaps - Use dropped capitals to start a paragraph in LaTeX 2.09
- dropping - A LaTeX2e macro for dropping the first character(s) (or word(s)) of a paragraph, extending the LaTeX 2.09 package dropcaps and automatically taking care of finding the font name
- gothic - Gothic and ornamental initial fonts by Yannis Haralambous
- initials - A special font (yinit) is defined to be used for initial dropped capitals
- lettrine - Supports various dropped capitals styles, typically those described in the French typographic books

### Historic Fonts:

#### Antiquity and Early Ages:

- archaic - A collection of archaic fonts
- cypriot - A script which was used on Cyprus for writing Greek
- etruscan - Fonts for the Etruscan script
- greek6cbc - A Greek font from the sixth century BC
- greek4cbc - A Greek font from 394BC
- hieroglf - A Metafont version of about 75 Egyptian hieroglyphs, but the package is not for serious Egyptologists
- hieroglyph - A package for typesetting ancient egyptian hieroglyphs which contains a hieroglyphic font, a number of style files, and an helper program in C that allows one to type hieroglyphic texts using the so-called "manuel de codage", which is the current standard for encoding ancient egyptian; also includes the Type 1 fonts for creating PDF files.
- linearb - Linear B script used in the Bronze Age for Mycenaean Greek
- oldprsn - Fonts old Persian cuneiform script
- phoenician - Fonts for the semitic script in use from about 1600 BC
- protosem - Fonts for proto-Semitic cuneiform script
- runic - Fonts for Anglo-Saxon futharc script
- ugarite - Fonts for Ugaritic cuneiform script
- viking - Scandinavian runic alphabet as used by the Vikings

#### Gothic Fonts:

- blacklettert1 - A Gothic font
- CTAN: fonts/gothic/cmfrak/
- gothic - Gothic and ornamental initial fonts by Yannis Haralambous
- mfnfss - Packages to typeset oldgerman and pandora fonts in LaTeX
- yfonts - A LaTeX interface to the old-german fonts designed by Yannis Haralambous: Gotisch, Schwabacher, Fraktur and the baroque initials
- yfonts-t1 - Old German-style fonts, in type 1 format
- yfrak - Old German Fraktur font
- ygoth - Old German Gothic font
- yinit - Old German decorative initials
- yswab - Old German Schwabacher font

#### Bookhand Fonts:

- auncial - Metafont fonts based on the Artificial Uncial manuscript book-hand used between the 6th and 10th century AD
- bookhands - A collection of book-hand fonts
- carolmin - Metafont fonts based on the Carolingan Miniscules manuscript book-hand used between the 8th and 12th century AD
- egothic - Metafont fonts based on the Early Gothic manuscript book-hand used between the 11th and 12th century AD
- humanist - Humanist manuscript book-hand font
- huncial - Metafont fonts based on the Half Uncial manuscript book-hand used between the 3rd and 9th centuries
- inslrmaj - Metafont fonts based on the Insular Majuscule manuscript book-hand used between the 6th and 9th centuries
- inslrmin - Metafont fonts based on the Insular Miniscules manuscript book-hand used from the 6th century onwards
- pgothic - Metafont fonts based on the Gothic Textura Prescisus vel sine pedibus manuscript book-hand used from the 13th century AD
- rotunda - Metafont fonts based on the Rotunda manuscript book-hand used between the 13th and 15th century AD
- sqrcaps - Metafont fonts based on the Square Capitals manuscript book-hand used from the 1st century AD
- tgothic - Metafont fonts based on the Gothic Textura Quadrata manuscript book-hand used between the 13th and 15th century AD
- uncial - Metafont fonts based on the Uncial manuscript book-hand used between the 3rd and 6th century AD

#### Runes:

- alrunes - Fonts and LaTeX package for almost all runes
- runic - Fonts for Anglo-Saxon futharc script, this font was used in England until just after printing was established

### Typesetting Handwriting:

- augie - A calligraphic font for simulating informal handwriting
- aurical - Calligraphic font (AuriocusKalligraphicus) for LaTeX in T1-encoding
- brushscr - BrushScript fonts including pbsi, a Type-1 PostScript font containing BrushScript Italic characters that simulates hand-written characters
- calligra - Calligraphic font in the handwriting style of the author, Peter Vanroose, which may be used with the fundus package
- calrsfs - Nicer calligraphic letters
- rsfs - Contains MetaFont sources for fonts of uppercase script letters for use as symbols in scientific and mathematical typesetting, in contrast to the informal script fonts such as that used for the 'calligraphic' symbols in the TeX math symbol font
- rsfs-ps - Converted (PostScript) outlines of the rsfs fonts
- schwell - Calligraphic font for typesetting handwriting in Schwell fonts
- sueterlin - Calligraphic font for typesetting handwriting in Suetterlin fonts
- twcal - A calligraphic font which may be used for typesetting what is called the "vereinfachte Ausgangsschrift" in German used in school books for first form

### Installing Fonts:

- fontinst - TeX macros for converting Adobe Font Metric files to TeX metric and virtual font format
- fontinstallationguide - How to install new fonts

### Misc:

- a2ac - Enables the use of PostScript fonts while typesetting texts in languages where accented letters are used. The program may be used to prepare a font for any typesetting system, especially TeX
- accfonts - Two utilities to permit easy manipulation of fonts, in particular the creation of unusual accented characters (mkt1font and vpl2vpl)
- adobeother - Font metrics for Adobe non-standard fonts
- adobestd - Font metrics for Adobe standard fonts
- ascii - Support for IBM extended ASCII font
- apl - Fonts for typesetting APL programs
- cirth - Fonts for Cirth
- fundus - Providing LaTeX access to various font families

## PostScript Support

PostScript Type 1, and Type 3 fonts are listed in the Fonts section.

### dvips:

- aurora - Header files for dvips to make colour separations
- dvips - A dvi to PostScript driver by Tom Rokicki
- dvipsk - Convert DVI to Postscript - with KPSE search path
- dvips-os2 - OS/2 executable for dvips
- dvips-shell - A dvips Shell for MS-Windows32

### psnfss:

The psnfss packages mathppl, mathptm, palatino, utopia and times are obsolete and hence should not be used any more.

- altfont - A generalised replacement for some parts of psnfss and mfnfss
- lw35nfsx - LaTeX psnfss support for the 35 printer resident PostScript fonts using ly1 text font encoding, employing the Berry names
- ly1 - The Y&Y texnansi (TeX 'n ANSI) encoding
- psnfss - Font support for common PostScript fonts, including font definition files, macros and font metrics for common PostScript fonts using the New Font Selection Scheme, or NFSS2, originally implemented by Sebastian Rahtz. Implements the following style files: avant, bookman, chancery, charter, courier, helvet, mathpazo, mathptmx, newcent, pifont, and fourier
- psnfss-source - Sources (makefiles and fontinst scripts) of the PSNFSS
- psnfssx - Extra styles and encodings for PS fonts, including Y&Y encoding support

### PS-Tricks:

PS-Tricks has its own homepage.
There are more packages for drawing curcuit diagrams and for working in the field of electronics.

- pdftricks - Support for pstricks in pdftex
- PS-Tricks - An extensive collection of PostScript macros that is compatible with most TeX macro packages, used for drawing technical, and mathematical diagrams
- pst-3dplot - Draw 3d curves and graphs using PSTricks
- pst-bar - Produces bar charts using pstricks
- pst-blur - PSTricks package for "blurred" shadows
- pst-circ - PSTricks package for drawing electric circuits
- pst-fr3d - Draw 3-dimensional framed boxes using PSTricks
- pst-func - PSTricks package for plotting mathematical functions
- pst-geo - A PSTricks related package for various cartographic projections of the terrestrial sphere
- pst-ghsb - Draw HSB colour gradients
- pst-gr3d - Three dimensional grids with PSTricks
- pst-infixplot - Using pstricks plotting capacities with infix expressions rather than RPN
- pst-jftree - Drawing trees for use in linguistic analysis
- pst-lens - Lenses with PSTricks
- pst-light3d - Three ensional lighting effects on characters and PSTricks graphics, like lines, curves, plots, etc.
- pst-math - Enhancement of postscript math operators to use with pstricks
- pst-node - Allows you to define nodes in your document, and to draw connections between the nodes
- pst-optic - Optic drawings: lenses and mirrors
- pst-osci - Enables you to produce oscilloscope "screen shots"
- pst-poly - Drawing polygons with PSTricks
- pst-slpe - Sophisticated colour gradients
- pst-uml - Support for drawing moderately complex UML (Universal Modelling Language) diagrams
- pst-vue3d - Draw perspective views of three dimensional objects
- pst-xkey - Key-value syntax for pstricks packages

### Misc:

- cep - Compression tools for PostScript
- pslatex - A small package that makes LaTeX default to "standard" PostScript fonts. It is basically a merger of the obsolete times and mathptm styles from the psnfss suite of packages, and hence should not be used any more

## Creating PDF Documents

### PDFTeX:

- pdftex - An extension of TeX which directly generates PDF documents instead of DVI
- pdftex_oztex - PdfTeX designed to run with OzTeX

### Packages for Special PDF Features:

- attachfile - Attaching files to PDF documents
- hyperref - Extensive support for hypertext in LaTeX
- microtype - Provides a LaTeX interface to pdfTeX's micro-typographic extensions: character protrusion and font expansion. See also pdfcprot
- pdfcprot - Activating and setting of character protruding using pdflatex. See also microtype
- pdfcrop - Crop PDF graphics
- pdfcrypt - Allows the setting of pdf encryption options for pdfTeX and VTeX
- pdfpages - Include pages from external PDF documents in LaTeX documents
- pdfscreen - An extension of the hyperref package to provide a screen-based document design
- pdfslide - Make nive presentation slides using pdftex
- pdftricks - Support for pstricks in pdftex
- thumbpdf - Provides support, using Perl, for thumbnails in pdfTeX and dvips/ps2pdf

### Fonts for PDF Files:

- ae - Virtual fonts for PDF-files with T1 encoded CMR-fonts
- aeguill - A package adding several kinds of guillemets to the ae fonts

### PDF Viewers and Tools:

- a2ping - A UNIX command line utility written in Perl that converts many raster image and vector graphics formats to EPS or PDF and other page description formats
- acroread - A tool from Adobe for reading Adobe PDF files available for a variety of architectures
- xpdf - Previewing and manipulating upon PDF files on most platforms available

## Combining Documents

For linking documents by crossreferences use xr.
See also Managing large Documents.

- askinclude - Asks the user which files to put in a \includeonly command
- chapterfolder - Package that simplifies working with folder structure; useful for organizing complex projects
- combine - Bundle individual documents into a single document, such as when preparing a conference proceedings
- csvtools - Allows you to repeatedly perform a set of LaTeX commands on data in each row of a comma separated variable (CSV) file
- cwebhy - Insert hyperlinks for included files
- dviconcat - Concatenates dvi files
- dvicopy - Copy and concatenate DVI files
- pdfpages - Include pages from external PDF documents in LaTeX documents
- texdepend - Find dependencies in a LaTeX file
- textmerg - Merge text in TeX and LaTeX. Useful, for example, in mail merge
- twoinone - Print two pages on a single page (a4paper landscape)
- twoupe - Print two virtual pages on each physical page
- twoupltx - Print two virtual pages on each physical page
- tvs - A Perl script to collect all files which are needed to re-typeset TeX documents by parsing TeX logs

## Bundling all Packages necessary for compiling a Document

- bundledoc - Bundle together all the files needed to build a LaTeX document
- snapshot - List the external dependencies of a LaTeX document

## Managing different versions of your document

See also Combining Documents, and Managing large documents.

- changebar - Generate changebars in LaTeX documents for indicating which parts of the text have changed
- chappg - Package for page numbering by chapter
- comment - Selectively include/ exclude pieces of text, allowing the user to define new, separately controlled, comment versions
- draftcopy - Places the word DRAFT (or other words) in light grey diagonally across the background (or at the bottom) of each (or selected) pages of the document
- extract - Extract specific content from a source document and write that to a target document
- pdfdraftcopy - A package derived from the draftcopy package for use with pdftex
- optional - Facilitate optional printing of parts of a document
- prelim2e - Allows the marking of preliminary versions of a document, by default marking the document as draft and putting a timestamp on it. Can be used together with e.g. the version, rcs, and rcsinfo packages and it may be used with the scrtime package from the koma-script bundle.
- rcs - Use RCS (revision control system) tags in LaTeX documents
- rcsinfo - A package to extract RCS (Revision Control System) information and use it in a LaTeX document
- svn - Lets you typeset (in LaTeX) the value of Subversion keywords which is approximately an equivalent to the rcs package, but for Subversion rather than CVS
- svninfo - A package for incorporating the values of Subversion keywords into typeset documents
- version - Add version number to DVI file
- versions - This package does the same as the version package, but corrects, improves, and extends it in both implementation and function

## Managing large Documents

See also Combining Documents, and Managing different versions of your document.

- chapterfolder - Provides a macro to define chapter/ section/ subsection folders that contain the files for chapter/section/subsection, and provides a macro that allows inclusion without using the full path
- collect - Provides a 'collect' environment, that typesets text and saves it for later re-use. (A variant collects text in a macro.)
- import - Allow input of a file with its own inputs from another directory
- progress - A package which. when compiling TeX and LaTeX documents, generates a HTML file showing an overview of a documents' state (of how finished it is)

## Multilingual Support

Try the parallel package for typesetting bilingual versions of a text side by side in two columns. parrun may be useful for typesetting two streams of text running parallel one above the other.
There are packages for typesetting critical editions too.
You may also typeset two-language dictionaries using LaTeX2e.
Omega is intended for multilingual typesetting, supporting unicode and bi-directional typesetting.

### Misc:

#### The babel Package:

- The babel package currently provides support for 41 languages in all, both modern and ancient. It should be used whenever possible as babel is available on all LaTeX systems.

#### Multilingual Bibliographies:

- babelbib - Generate multilingual bibliographies in cooperation with babel

### Arabic:

- arabtex - Macros and fonts for typesetting Arabic and Hebrew

### Armenian:

- armenian - Write in Armenian with TeX
- armtex - An Armenian system for TeX/LaTeX(2e)/METAFONT

### Basque:

- bahyph - Hyphenation patterns for basque at CTAN:language/basque

### Bangla and Asamese:

- bangtex - Class files for writing Bangla and Asamese with LaTeX

### Bengali:

- arosgn - Support for the Bengali language
- pandey - Support for the Bengali language

### Burmese:

- burmese - basic support for writing Burmese with LaTeX. Requires Perl.

### Casyl:

- casyl - Typeset Cree/Inuktitut in Canadian Aboriginal Syllabics

### Cherokee:

- cherokee - Fonts for typesetting Cherokee
- ocherokee - Typesetting the Chirokee language with the Omega version of LaTeX

### Chinese, Japanese, Korean:

For information on Chinese TeX see the CTeX homepage.

- china2e - A LaTeX package to produce Chinese calendar symbols of the old Chinese lunisolar calendar
- cjk - A macro package which enables the use of Chinese/ Japanese/ Korean with LaTeX2e
- cjk-fonts - Fonts to go with the cjk macro package for Chinese/ Japanese/ Korean with LaTeX2e
- hlatex - Support for Korean documents written in Korean standard KSC codes for LaTeX2e
- manjutex - Manju language support
- mnttex - Assists in typing special Chinese characters
- uhc-gothic - Fonts for the Korean language
- zwtex -

### Coptic:

- copte - Coptic Fonts

### Croatian:

- croatian - Fonts for typesetting Croatian scripts
- hrhyph - Hyphenation patterns for the Croatian language

### Cyrillic:

- ascii-cyrillic - A converter for 8-Bit Russian and Ukrainian text to the Latin alphabet (7-Bit ASCII).
- cmcyr - Computer Modern fonts extended with Russian letters, in MetaFont sources and ATM Compatible
- cmcyralt - Alternative Russian encoding support
- CyrTUG - The CyrTUG distribution for emtex
- lh - The lh fonts for the `T2'/X2 encodings
- izhitsa - Support for the old Russian font "Izhitsa"
- ot2cyr - Macros to use the OT2 Cyrillic encoding
- rawprint - Print raw Russian text

### Czech and Slovene:

- czech - Typeset Czech documents
- csfonts - Czech/Slovak-tuned MetaFont Computer Modern fonts
- cslatex - LaTeX support for Czech/Slovak typesetting
- csplain - Plain TeX support for Czech/Slovak typesetting
- cspsfonts - Czech and Slovakian PostScript fonts
- czhyph2e - A Perl script czhyph2e.pl by Werner Lemberg which converts the Czech hyphenation pattern as distributed on the CTAN network from the PC encoding into a form usable by LaTeX2e with T1 fontencoding (DC fonts)
- sihyph23 - Slovene hyphenation patterns
- slovak - Typeset Slovakian documents

### Devangari:

- devanagari - Frans Velthuis' preprocessor for Devanagari text, and fonts and macros to use when typesetting the processed text

### Dutch:

- beletter - A small class for typesetting Belgium letters
- ntgclass - Versions of the standard LaTeX article and report classes, rewritten to reflect a more European design, by the Dutch TeX Users Group

### English

- ukhyph - Hyphenation patterns for British English
- ushyph - Extended US hyphenation patterns

### Epi-Olmec:

- epiolmec - Typesetting the Epi-Olmec language used in Southern Middle America until about 500 AD

### Ethiopian:

- enthiop - Ethiopian language support for the babel package, including a collection of fonts and TeX macros for typesetting the characters of the languages of Ethiopia, with fonts based on EthTeX originally distributed by Abass B. Alamnehe

### French:

- aeguill - A package adding several kinds of guillemets (polish cmr, cyrillic cmr, lasy and ec) to the ae fonts. It is useful if you are using the ae fonts to produce PDF files, since the additional guillemets exist in Type 1 versions
- beletter - A small class for typesetting Belgium letters
- bib-fr - French translation of classical BibTeX styles
- esieecv - Curriculum vitae for French
- frenchle - French option for Babel (also independently)
- frenchpro - Professional typesetting of French documents (for Windows and up to Mac OS 9)
- french-translations - French translation project for documentation of LaTeX packages
- frhyph - French hyphenation patterns
- lettre - Letters and faxes in French

### German:

- brief - German letter style
- dinat - Bibliography style files intended for texts in german in accordance with the german DIN 1505, parts 2 and 3
- dinbrief - Implements a document layout for writing letters according to the rules of DIN
- fribrief - A LaTeX class for writing letters
- g-brief - Serves for formatting formless letters in German or English language
- german - Support for traditional German typography
- germbib - German variants of standard BibTeX styles
- germdoc - Guide to german
- ngerman - Supports the new German orthography, or Neue deutsche Rechtschreibung

### Greek:

For typesetting ancient Greek use the babel package with the option polutonikogreek.
See "Humanities" for more references on the Humanities.

- betababel - Provides a simple way to insert ancient greek texts with diacritical characters into your document through the commonly used Beta Code transliteration
- bgreek - Implements a dialect of the Beta Code encoding (TLG and Perseus Project) for typesetting classical Greek using Claudio Beccari's Greek Fonts
- cbgreek - MetaFont source files for a complete set of Greek fonts
- cypriot - Provides a Metafont version of a syllabic script which was used on Cyprus for writing Greek between approximately the tenth and third centuries BC; part of the archaic fonts
- greek4cbc - A Greek monumental font as used on a stele in Athens in 394BC
- greek6cbc - This Greek font is typical of those used in the 6th century BC
- hellas - Typeset bibliographies which include Greek using bibtex
- hyphenation-greek - Hyphenation patterns for ancient and modern Greek
- kdgreek - Greek fonts
- lgreek - Macros for using Silvio Levy's Greek fonts
- macgreek - Greek language support for the macintosh
- mtgreek - Use italic and upright greek letters with mathtime
- upgreek - Provides the upright Greek letters from the Euler or Adobe Symbol fonts as additional math symbols, with proper scaling in super- and subscripts

### Gurmukhi:

- gurmukhi - Gurmukhi (a Punjabi language) for TeX, including a converter from us-ascii to Gurmukhi

### Hebrew:

- arabtex - Macros and fonts for typesetting Arabic and Hebrew
- cjhebrew - Typesetting Hebrew
- makor - A system for typesetting Hebrew with TeX
- Makor 2 - Typeset Hebrew with vowels or liturgical accents, Yiddish, documents prepared using arabtex Hebrew conventions, Biblia Hebraica Stuttgartensia, and Old Hebrew with omega
- pcfonts - Support for Hebrew

### Hungarian:

- huhyph - Hyphenation patterns for the Hungarian language

### Icelandic:

- icelandic - Icelandic fonts

### Indian:

- itrans - The Indian Language Transliteration package

### Inuktitut:

- oinuit - A set of Lambda (omega LaTeX) typesetting tools for the Inuktitut language

### Italian:

- C.D.P. Bundle - Business letters in the Italian style
- ithyph - Italian hyphenation

### Japanese:

See also CJK.

### Korean:

See also CJK.

- hlatex - Support for Korean documents written in Korean standard KSC codes for LaTeX2e
- uhc-gothic - Fonts for the Korean language

### Latin:

- lahyph - Hyphenation patterns for typesetting Latin, part of the babel package

### Malayam:

- malayalam - Fonts for typesetting Malayalam, with a pre-processor

### Manju:

- manjutex - Manju language support

### Mongolian:

- montex - Provides Mongolian support for LaTeX2e (now Cyrillic, but soon also Classical Mongolian)

### Polish:

- antp - Type 1 family of Polish traditional type Antykwa Torunska
- antt - Type 1 family of Polish traditional type Antykwa Torunska
- anttvf - Virtual fonts for PostScript Antykwa Torunska font
- cc-pl - Polish extension of Computer Concrete fonts (MetaFont sources)
- cc-plps - Polish extension of Computer Concrete fonts in Type1 format
- gustlib - Various small utility packages for typesetting in plain TeX, with a Polish perspective
- mex - An adaptation of Plain TeX and LaTeX209 formats to the Polish language and to the Polish printing customs
- ogonek - Support for Polish typography and the ogonek
- plfonts - Polish extension to CM fonts

### Portuguese:

- pthyphs - Hyphenation patterns for Portuguese

### Romanian:

- romaniantex - A LaTeX2e package for type-setting Romanian in a multi-lingual TeX environment

### Russian:

See packages for typesetting Cyrillic encodings, and fonts.

### Sanskrit:

- sanskrit - A font and pre-processor suitable for the production of documents written in Sanskrit

### Sinhala:

- sinhala - Support for the sinhala language

### Slovene:

- sihyph23 - Slovene hyphenation patterns

### Somali:

- osmanian - Osmanian fonts by Alan Stanier for writing Somali

### Spanish:

- esindex - Typset index entries in Spanish documents
- spanish - Various TeX related files for typesetting documents written in Spanish, including hyphenation and dictionaries

### Swedish:

- sehyph - Hyphenation patterns for Swedish
- swebib - Swedish translation of standard BibTeX styles
- swetex - Plain TeX support for writing Swedish
- slatex - LaTeX support for writing Swedish

### Tamil:

- wntamil - Tamil to TeX converter

### Telugu:

- telugu - Plain TeX, and LaTeX support for writing in Telugu

### Tibetan:

- ctib4tex - Tibetan for TeX and LATeX2e; no external preprocessor is needed
- pecha - Provides an environment for writing Tibetan on LaTeX2e in the traditional Tibetan Pecha layout
- ttt - A Tibetan Transcript Transliterator for LaTeX

### Turkish:

- turkish - Fonts and macros for Ottoman Turkish and Modern Turkish in Roman letter transcription

### Ukrainian:

A converter from cyrillic letters to ASCII is ascii-cyrillic
See also packages for cyrillic encodings, and fonts.

- ukrhyph - Ukrainian hyphenation patterns

### Vietnamese:

- tcvn - A package for vietnamese TCVN encoding which is widely used in MS-Windows applications
- vncmr - A Vietnamese extension of the cmr fonts
- vntex - Vietnamese LaTeX and Plain TeX support

### Misc:

- accents - Multiple accents with nice features concerning creation of accents and placement of scripts

## "Office" Applications

### Writing Letters, Faxes, Memos, and Newsletters:

The koma-script bundle provides a letter class of its own called scrlttr2.
There are also packages for producing labels and for addressing envelopes.

- akletter - Extends LaTeX's usual letter class, providing support for building your own letterhead and marking fold points for window envelopes
- beletter - A small class for typesetting Belgium letters
- brief - German private letter class
- C.D.P. Bundle - Business letters in the Italian style
- dinbrief - German letter class implementing a document layout for writing letters according to the rules of DIN
- envlab - Package for producing mailing envelopes and labels, including barcodes and address formatting according to the US Postal Service rules
- facsimile - Provides a simple interface for creating a fax with LaTeX
- fax - Document class for preparing faxes
- fribrief - A LaTeX class for writing letters
- formlett - Letters to multiple recipients
- g-brief - Formless letters in German, or English
- gtex-letter - A Gnome assistant (wizard/druid) to ease the writing of LaTeX letters
- lettre - Letters and faxes in French.
- myletter - Another letter package
- newlfm - Integrates the letter class with fancyhdr and geometry to automatically make letterhead stationary. Useful for writing letters, fax, and memos
- newsletr - Macros to help create newsletters and newspapers
- postcards - Facilitates mass-mailing of postcards (junkmail, US standard size)
- ticket - Make labels, visting-cards, pins with LaTeX

### Meeting protocols:

- assignment - Typesetting homework or lab assignments
- minutes - Package for writing minutes of meetings
- protocol - Typeset meeting protocols

### Keeping Lists of Addresses and Mass-Mailing:

The koma-script bundle provides scraddr that goes with the scrlttr2 letter class for using address data in letters.

- adrconv - A collection of BibTeX style files to turn an address database stored in the .bib format into files suitable for printing as address books or included into letter classes
- adrlist - Using address lists in LaTeX
- csvtools - Allows you to repeatedly perform a set of LaTeX commands on data in each row of a comma separated variable (CSV) file
- delimtxt - Read and parse text tables. Can be used for serial letters and the like, making it easier to export the data file from MS-Excel/MS-Word
- directory - A package for LaTeX and BibTeX that facilitates the construction, maintenance and exploitation of an address book-like database
- formlett - Letters to multiple recipients
- mailing - Macros for mail merging
- postcards - Facilitates mass-mailing of postcards (junkmail, US standard size)
- textmerg - Merge text in TeX and LaTeX. Useful, for example, in mail merge

### Calendars, Date and Time:

- advdate - Provides macros which can add a specified number of days to the current date (as specified in \today) and print it. Intended for use, for example, in invoices payable within 14 days from today etc
- calendar - Organizes date items in a format suitable for conference schedules, itineraries, academic teaching timetables and the like
- calxxxx - Prints a card-size calendar for any year, AD or BC, with Gregorian or Julian leap rules
- china2e - A LaTeX package to produce Chinese calendar symbols of the old Chinese lunisolar calendar
- clock - Graphical and textual clocks for TeX and LaTeX
- dates - Macros for parsing date strings
- datetime - Change format of \today with commands for current time
- datenumber - Convert a date into a number and vice versa
- isodate - Tune the output format of the \today command
- kalendar - A calendar style
- kalender - Style file for creating a calendar (in German)
- plcalendar - Plain macros for making nice calendars
- termcal - Print a term calendar for use in planning a class
- timesht - Package for typesetting time sheets

### Money Currency:

There are some packges for making the Euro currency symbol (€) work in LaTeX.

### Writing Applications for a Job / CV:

There are no packages for writing an application as a whole. So try to combine one of the following packages for CVs with a package for letters that suits your needs.

- CurVe - A LaTeX2e class for making curriculum vitae
- currvita - Package for typesetting a curriculum vitae
- cv - A package for creating a curriculum vitae
- cvsty - Yet another style for easy CV pagination
- esieecv - Curriculum vit for French
- europecv - An unofficial LaTeX implementation of the standard model for curricula vitae as recommended by the European Commission
- res - Resume class for LaTeX2e
- vita - This class provides necessary macros to prepare your Curriculum Vitae or Resume

### Business Cards, Labels and Envelopes:

- bizcard - Typeset business cards
- envbig - Printing addresses on envelopes
- envlab - Facilates addressing envelopes or mailing labels, including barcodes and address formatting according to the US Postal Service rules
- flabels - Pretty labels (optionally colored) for the back of files or binders
- labels - Print sheets of sticky labels

### Leaflets:

- booklet - Aids for printing simple booklets
- faltblat - A package for making leaflets (two sides at three columns each)
- leaflet - Create small hand-outs that fit on a single sheet of paper which is then folded twice
- newsletr - Macros to help create newsletters and newspapers
- twoinone - Print two pages on a single page (a4paper landscape)
- twoupe - Print two virtual pages on each physical page
- twoupltx - Print two virtual pages on each physical page

### Writing Invoices:

- advdate - Provides macros which can add a specified number of days to the current date (as specified in \today) and print it. Intended for use, for example, in invoices payable within 14 days from today etc
- dcolumn - Align on the decimal point of numbers in tabulars
- invoice - Generate invoices

### Presentation Slides:

Harald Wiedmann provides a comprehensive overview of tools for making screen presentations, most of them working with LaTeX.

- beamer - A LaTeX class for producing presentations and slides
- foilhtml - Provides integration between foiltex and latex2html
- foiltex - A LaTeX2e class for overhead transparencies that can be used with fancybox to place a variety of borders around the slides
- ha-prosper - Patches and improvements for the prosper package
- ifmslide - Produce printed slides with latex and online presentations with pdflatex compatible with seminar
- pdfscreen - An extension of the package to provide a screen-based document design
- pdfslide - Presentation slides using pdftex. helping the mix of mathematical formulae with text and graphics which the present day wysiwyg tools fail to accomplish
- ppower4 - A post processor for PDF presentations created by pdf(La)TeX
- prosper - A LaTeX class for writing transparencies, written on top of the seminar class; ha-prosper supplies some patches and improvements
- seminar - Produce overhead slides (transparencies) with bells and whistles. See also the hc classes.
- slidenotes - A class package for the easy production of a slide collection with annotations
- slides - A standard LaTeX2e class for the production of overhead transparencies (foils), replacing the older SliTeX format
- slideshow -
- talk -
- tpslifonts - A LaTeX package for configuring presentation fonts
- uwmslide - Slides with a simple Power Point like appearance

### Spreadsheets:

There is Calc2LaTeX for converting OpenOffice spreadsheets to LaTeX tables.

- csvtools - Allows you to repeatedly perform a set of LaTeX commands on data in each row of a comma separated variable (CSV) file
- Excel-to-LaTeX - Convert Excel spreadsheets to LaTeX tables (works with Excel up to Excel 97)
- xl2latex - Convert Excel (97 and above) tables to LaTeX tabulars

## Databases

- LaTeXDB - Integrates LaTeX and SQL databases
- SQLTeX - A well documented perl script that serves as a preprocessor to enable the use of SQL statements in LaTeX

## Science

Note: There are some more packages for working on your bibliography. Packages specific to one subject are listed both there and below.

### Typesetting Theses and Papers for Journals:

Note: There are more alternatice document classes you may use for scientific work as well.

- AASTeX - Styles for formatting submissions to journals published by the American Astronomical Society
- abstbook - A LaTeX2e class file for making "books of abstracts", commonly used for conferences, based on report class
- acmconf - Association for Computing Machinery conference proceedings
- adfathesis - Australian Defence Force Academy thesis format
- afthesis - LaTeX thesis/dissertation class for US Air Force Institute Of Technology
- amsart - A LaTeX document class for articles that is tailored to the design of American Mathematical Society journals
- amsbook - A LaTeX document class for books that is tailored to the design of American Mathematical Society publications
- amsproc - A LaTeX document class for conference proceedings that is tailored to the design of American Mathematical Society publications
- bgteubner - Class for producing books for the publisher Teubner Verlag
- ebsthesis - Facilitates the production of camera-ready manuscripts in conformance with the guidelines of Gabler Verlag and typographical rules established by European Business School
- elsevier - Preprint style for Elsevier Science journals
- harvmac - Paul Ginsparg's Harvard macros for scientific articles
- jpsj - Document Class for Journal of the Physical Society of Japan
- nrc - Macros, and some documentation, for typesetting papers for submission to journals published by the National Research Council of Canada
- paper - A class derived from article, tuned for producing papers for journals introducing new layout options, and many more options and new commands
- pitthesis - Document class for University of Pittsburgh theses
- startex - A TeX format designed to help students write short reports and essays
- scientificpaper - Format a scientific paper for journal publication "..."
- stdpage - Standard pages with n lines of at most m characters each
- thesis - A class for producing a thesis based on the report class for a more European and more flexible look
- uaclasses - Typesetting theses and dissertations in the official format required by the University of Arizona
- utorontothesis - A LaTeX2e thesis class definition for University of Toronto
- ut-thesis - University of Toronto thesis style
- uwthesis - University of Washington thesis style

### Typesetting Laboratory Journals:

- assignment - Typesetting homework or lab assignments
- labbook - Typeset laboratory journals that contain chronologically ordered records about experiments based on koma-script

### Typesetting Physical Units:

- siunits - Typeset physical units following the rules of the International System of Units (SI).
- sistyle - Package to typeset SI units, numbers and angles
- units - Typeset units
- unitsdef - Typesetting units in LaTeX2e

### Mathematics:

Thanks to Morten Høgholm for advice on this section.

For typesetting arrays see also the packages for tables, and for formatting decimal columns.
There are some guides on using LaTeX for Mathematics.

#### Calculating:

- advdate - Provides macros which can add a specified number of days to the current date (as specified in \today) and print it. Intended for use, for example, in invoices payable within 14 days from today etc
- arrayjob - Provides array data structures in (La)TeX
- calc - Adds infix expressions to perform arithmetic in certain LaTeX commands
- fltpoint - The package provides simple floating point operations
- fp - Provides an extensive collection of arithmetic operations for fixed point real numbers of high precision
- realcalc - Macros for real arithmetic calculations

#### AMS-LaTeX:

- amsart - A LaTeX document class for articles that is tailored to the design of American Mathematical Society journals
- amsbook - A LaTeX document class for books that is tailored to the design of American Mathematical Society publications
- amslatex - A collection of loosely related files that are distributed together by the American Mathematical Society, hese files are miscellaneous enhancements to LaTeX whose aim is superior information structure of mathematical documents and superior printed output
- amscd - Part of the amslatex distribution, this package adapts the commutative diagram macros of AMS-TeX for use in LaTeX
- amscls - AMS document class for LaTeX
- amsltx11 - Obsolete version of AMS-LaTeX for LaTeX 2.09
- amsmath - the principal package in the amslatex distribution
- amsproc - A LaTeX document class for conference proceedings that is tailored to the design of American Mathematical Society publications
- amsppt - AMS-TeX article preprint document style
- amsppt1 - AMS-TeX v.2 compatibility for amsppt.sty v.1
- amsproc - LaTeX document class for AMS conference proceedings
- amssym - AMS symbol fonts for Plain TeX
- amstext - Defines a \text macro, which makes it easy to incorporate fragments of text inside a displayed equation or a sub or superscript
- amsthm - A LaTeX package that facilitates the kind of theorem setup typically needed in American Mathematical Society publications environments, and to tag the equations therein
- testmath - Examples of the AMS-LaTeX package

#### Support for AMS-LaTeX:

- empheq - Provides a visual markup extension to amsmath. See also mh
- gauss - Provides configurable tools for producing row and column operations on matrices a.k.a. Gaussian operations
- mathtools - Mathematical tools to use with amsmath; part of the mh bundle
- mh - A series of packages designed to enhance the appearance of documents containing a lot of math
- ntheorem - Enhanced theorem environment. See also mh
- onlyamsmath - Inhibits the usage of plain TeX and on demand of standard LaTeX math environments which is useful for class writers who want to force their clients to use the environments provided by the amsmath package
- tex2ltx - Useful for converting plain TeX (AMS) files into AMS-LaTeX and convert plain AMS-TeX bibliographic references into BibTeX

#### The easy Family of Packages:

- easy - A collection of "easy" to use macros
- easybmat - A simple package for writing block matrices with equal column widths or equal rows heights or both, with various kinds of rules between rows and columns
- easyeqn - A simple package for writing equations
- easymat - A simple package for writing matrices
- easytable - A simple package for writing tables
- easyvector - Write vectors in a C-like fashion

#### Other Math Macros:

- accents - Multiple accents with nice features concerning creation of accents and placement of scripts
- bezos - Tools for math accents; tensorial indexes; tools for easy entry of Spanish index entries
- cancel - A package to draw diagonal lines and arrows with limits through math formulas
- cases - Define numcases: math cases with equation numbers. Also defines subequation numbering.
- hhtensor - Provides commands for vectors, matrices, and tensors with different styles
- maybemath - Make math bold or italic according to context
- mhequ - Simplifies the creation of multi-column equation
- nath - A LaTeX style to separate presentation and content in mathematical typography
- tensind - Typesets tensors with dots filling gaps and fine tuning of index placement
- tensor - Allows the user to set tensor-style super and subscripts with offsets between successive indices
- vector - Macros for more convenient representation of vectors in LaTeX2e, both symbolically and as implicit or explicit rows/columns of elements

#### Math Fonts:

PostScript math fonts are supported by both the mathpazo package for Palatino, and the mathptmx package for Times which are part of the psnfss package. See the psnfss section for details.

- a0poster - Provides fonts in sizes of 12pt up to 107pt and also makes sure that in math formulas the symbols appear in the right size
- amsfonts - Augments the standard set normally distributed with TeX, including: extra mathematical symbols; blackboard bold letters (uppercase only)
- amssym - AMS symbol fonts for Plain TeX
- amssymb - AMS symbol fonts for LaTeX
- bbold - A geometric sans serif blackboard bold font, for use in mathematics
- belleek - Free replacement for basic MathTime fonts
- concmath - Concrete Math fonts fraktur letters; subscript sizes of bold math italic and bold Greek letters; subscript sizes of large symbols such as sum and product; added sizes of the Computer Modern small caps font; cyrillic fonts (from the University of Washington); Euler math fonts
- euler - Provides a setup for using the AMS Euler family of fonts for math in LaTeX documents
- eulervm - Euler virtual math fonts based on Euler and CM, compatible with amsmath
- fourier - A full replacement for the Computer Modern fonts
- upgreek - A package to provide the upright Greek letters from the Euler or Adobe Symbol fonts as additional math symbols, with proper scaling in super- and subscripts

#### Math Graphics:

- circle - Provides circles in math mode that can be used for the nextstep operator of temporal logic, in conjunction with \Box and \Diamond (latexsym) or \square and \lozenge (amssymb)
- sseq - Provides a new LaTeX environment for inline typesetting of spectral sequence charts; it is built on top of xypic
- venn - Creating Venn diagrams with MetaPost
- xypic - A package for typesetting a variety of graphs and diagrams with TeX

### Statistics:

- statex - A package supporting statistical presentations

### Physics:

- hepparticles - Macros for typesetting high energy physics particle names
- isoptope - Typesetting isotopes
- jpsj - Document Class for Journal of the Physical Society of Japan
- nrc - Macros, and some documentation, for typesetting papers for submission to journals published by the National Research Council of Canada
- revtex - Styles for various Physics Journals
- slashed - Put a slash through characters. Useful for the Physicist's `Feynman slashed character' notation
- texsis - Plain TeX macros for Physicists

### Astronomy:

- aastex - American Astronomical Society format
- astro - Astronomical (planetary) symbols

### Aeronautics:

- aiaa - Typeset American Institute of Aeronautics and Astronautics conference papers
- ar - Provides MetaFont files and a LaTeX package for producing and using the uppercase A/R ligature as used by scientists and engineers in the field of aeronautics as the symbol for "aspect ratio"

### Chemistry:

- achemso - LaTeX and BibTeX style for American Chemical Society
- bpchem - Typeset chemical names, formulae, and numbering of chemical compounds
- chem-journal - Various BibTeX formats for journals in Chemistry, including Reviews in Computational Chemistry, Journal of Physical Chemistry, Journal of Computational Chemistry, and Physical Chemistry Chemical Physics
- chemarr - Analogous to amsmath's \xrightarrow and \xleftarrow this package provides a macro for a longer version of reaction arrows with the possibility to put text above and below; it requires AMS-LaTeX
- chemcono - Support for compound numbers in chemistry documents
- chemsym - Macros for typing chemical symbols context macro package for TeX that can be used to typeset chemical formulas
- isoptope - Typesetting isotopes
- mhchem - Typeset chemical formulae, and equations as well as Risk and Safety phrases
- ochem - A perl script to translate chemical formulae and reaction schemes into PostScript or LaTeX.
- ppchtex - A separate module of the context macro package for TeX
- texshade - Package for setting nucleotide and peptide alignments
- textopo - Annotated membrane protein topology plots

### Biology:

- biocon - LaTeX package for typesetting of biological species names
- dichokey - LaTeX package for dichotomous identification keys (for species identification)
- jtbnew - BibTeX style for Journal of Theoretical Biology
- texshade - Package for setting nucleotide and peptide alignments
- textopo - Annotated membrane protein topology plots

### Geophysics:

- aguplus - Styles for American Geophysical Union

### Electronics:

For drawing circuit diagrams see also the PS-Tricks package.

- circ - Macros for typesetting circuit diagrams
- circuit-macros - M4 Macros for Electric circuit diagrams
- timing - Fonts and macro package for drawing timing diagrams
- MetaPost Examples - Example pictures drawn with metapost
- metapost - A tool based on MetaFont for producing precise technical illustrations, creating scalable PostScript instead of bitmaps
- refman - A document class for writing technical reference manuals offering a wide left margin for notes to the reader, like some of the manuals distributed by Adobe, available for articles and reports

### Computer Science:

- ada - A system for Structured Software Documentation in Ada
- alg - Typesetting algorithms; lines are automatically numbered and can be referenced, with easy indentation, and algorithms as floats
- algorithm2e - An environment for writing algorithms, defining an algorithm as a floating object
- algorithmicx - Provides an environment for describing algorithms
- algorithms - Defines a floating algorithm environment
- apl - Fonts for typesetting APL programs
- c2cweb - A utility to prettyprint C and C plus plus source files using cweb
- c2latex - Simple conversion of C programs to LaTeX
- c-pascal - A TeX macro package for easy typesetting programs in C and Pascal; program sources in C and Pascal can also be input
- clrscode - Typesets pseudocode as in 'Introduction to Algorithms'
- cnoweb - Simple "quality" printing of C sources
- consdiag - A utility for OO programming documentation
- cursor - Creates a simple L-shaped 'cursor' in a math environment to mimic what one might see on a computer screen
- cweb - A system for Structured Software Documentation in C
- cwebbin - CWEB for ANSI-C/C++ compilers on UNIX/Linux, MS/Windows, and Amiga
- cwebx - A system for Structured Software Documentation in C
- docmfp - Extends the doc package to cater for documenting non-LaTeX code, such as MetaFont or MetaPost, or other programming languages
- hexdump - Reads an ASCII hexdump file and puts it formated into the document
- highlight - A program which converts source code to TeX and LaTeX with syntax highlighting
- listing - Produce formatted program listings
- listings - Typeset programming code within LaTeX using different styles, e.g., default is bold for keywords, italic for comments and no special style for strings, including support for hyperref
- method - Typesetting of programming language method and variable declarations; includes an option to typeset in French
- program - Typesetting programs and algorithms
- semantic - Typesetting of notation of semantics and compilers; includes T-diagrams, various derivation symbols and inference trees
- texlist - Typeset program (or ASCII text file) listings; a C program that generates LaTeX2e
- tinyc2l - Pretty print C/C++/Java source code using LaTeX

### Humanities:

For typesetting ancient Greek use the babel package with the option polutonikogreek.
For typesetting Latin you may also use the babel package with the option latin.
There are packages for typesetting Poetry and Drama.

#### Bibliography:

See also the general section on bibliographies.

- bibarts - A package to assist in making bibliographical lists common in the arts
- jurabib - bibtex databases for German legal texts in the first place, but also of interest to everyone else working in the humanities
- oxford - A BibTeX style implementing the oxford style, based on harvard

#### Critical Editions:

There are some packages for working on footnotes and endnotes as well as for numbering lines and paragraphs, and multilingual support.
A summary of the edmac package in comparison to ednotes, and ledmac as well as links to additional software helping in writing critical editions can be found on Dominik Wujastik's homepage.

- edmac - A macro package for typesetting scholarly critical editions
- ednotes - Typesetting scholarly critical editions with LaTeX
- ledmac - Typesetting scholarly critical editions; a LaTeX port of the plain TeX edmac macros
- ledpar - An extension of ledmac enabling parallel typesetting in columns or on facing pages. See also parallel
- parallel - Typesetting two languages side-by-side. See also ledpar
- parrun - Typesetting two streams of text running parallel one above the other
- poemscol - A set of LaTeX macros for typesetting critical editions of poetry
- vruler - A package for adding a vertical numbering to the general text so that the text can be properly referenced. The vertical ruler can be scaled and moved freely

#### Typesetting Dictionaries:

- fwlw - Extracts the first and last words of a page, together with the first word of the next page, just before the page is formed into the object to print.
- lexikon - Implements commands to generate a two language dictionary

#### Misc:

- alnumsec - Alphanumeric section numbering similar to alphanum, but you may use the standard LaTeX sectioning commands
- alphanum - Permits alphanumeric section numbering
- teubner - Philological typesetting

### Psychology:

- apa - A LaTeX class to format text according to the American Psychological Association Publication Manual (4th ed.) specifications for manuscripts or to the APA journal look
- apacite - A BibTeX style which closely follows the APA style citation, claiming to provide the closest match
- apasoft - A more conforming apa-like style for BibTeX
- mslapa - LaTeX and BibTeX style files for a respectably close approximation to APA citation and reference style

### Law:

- advdate - Provides macros which can add a specified number of days to the current date (as specified in \today) and print it. Intended for use, for example, in invoices payable within 14 days from today etc
- alnumsec - Alphanumeric section numbering similar to alphanum, but you may use the standard LaTeX sectioning commands
- alphanum - Permits alphanumeric section numbering as part of the jura package
- jura - Implements the standard layout for German term papers in law
- juraabbrev - Handle abbreviations for typesetting (German) juridical documents
- jurabib - BibTeX databases for German legal texts in the first place, but also of interest to everyone else working in the humanities
- juramisc - A package for writing court sentences, legal opinions, and dissertations, so far for German lawyers only
- jurarsp - A BibTeX style for quoting court decisions, and official papers as required in German legal texts
- lextex - LeXTeX is a collection of macros intended to enable lawyers, and in particular Barristers, to format their work using Plain TeX

### Economics:

- ebsthesis - Facilitates the production of camera-ready manuscripts in conformance with the guidelines of Gabler Verlag and typographical rules established by European Business School

### Phonetics:

- ipa - Using the WSU International Phonetic Alphabet
- phonetic - MetaFont Phonetic fonts, based on Computer Modern
- tipa - Fonts and macros for IPA phonetics characters
- wsuipa - Style for using International Phonetic Alphabet fonts
- wsuipa2tipa - A filter that translates an old LaTeX document, replacing all wsuipa font commands with tipa font commands

### Linguistics:

- pst-jftree - Drawing trees for use in linguistic analysis with pstricks

## Including Graphics

See also the packages for including floats, and for adding colour and shading.
We also list guides on including graphics.

- a2ping - A UNIX command line utility written in Perl that converts many raster image and vector graphics formats to EPS or PDF and other page description formats
- epsfig - Including Encapsulated PostScript in LaTeX documents, now superseded by the LaTeX2e graphics package
- eso-pic - A package to add picture commands (or backgrounds) to every page. See also wallpaper.
- graphics - The primary LaTeX package for the support of the inclusion of graphics generally produced with other tools
- graphicx - Better support for graphics, builds upon the graphics package
- grfguide - Guide to using graphics in LaTeX, including documentation on various packages including color and graphicx
- MiniPlot - A package for easy figure arrangement
- hilowres - Support high and low resolution versions of same picture
- picinpar - Insert pictures into paragraphs
- picins - Insert pictures into paragraphs (appears to be better than picinpar)
- photo - A float environment for including photographs
- rotating - A package built on the standard LaTeX graphics package to perform all the different sorts of rotation one might like
- wallpaper - Files to add wallpapers (background images) to LaTeX documents, using eso-pic, but providing simple commands to include effects such as titling.

## Drawing Graph Paper and Grids

- graphpap - Basic package for producing graph paper
- typogrid - Produces a typographic grid on every page of the document, useful to get the horizontal measures (distances etc.) into good values, may be found at CTAN:macros/latex/contrib/typogrid

## Drawing Diagrams and Charts

### Arrow Theoretic Diagrams

- arrow - Eplain macros for arrow theoretic diagrams
- barr - Diagram macros by Michael Barr
- diagxy - Draw commutative diagrams

### Barcharts

- bar - Provides the barenv environment for bar charts
- bardiag - LaTeX package for drawing bar diagrams

### Bezier Curves

- bez123 - Support for Bezier curves

### Bridge Diagrams

- bridge - Macros for typesetting bridge diagrams

### Drawing Circles

- circle - Provides circles in math mode that can be used for the nextstep operator of temporal logic, in conjunction with \Box and \Diamond (latexsym) or \square and \lozenge (amssymb)

### Clocks

- clock - Graphical and textual clocks for TeX and LaTeX

### Commutative Diagrams

- amscd - Part of the AMS-LaTeX distribution, this package adapts the commutative diagram macros of AMS-TeX for use in LaTeX
- DCpic - A package for typesetting Commutative Diagrams within a LaTeX and TeX documents
- taylor - Diagram macros by Paul Taylor

### Computer Keyboards

- keystroke - A LaTeX package which provides macros for the graphical representation of the keys on a computer keyboard

### Electric Circuit Diagrams

See also the electronics section and the PS-Tricks package.

- circ - Macros for typesetting circuit diagrams
- circuit-macros - A set of macros for drawing high-quality electric circuits containing fundamental elements, amplifiers, transistors, and basic logic gates to include in TeX, LaTeX, or similar documents

### Feynman Diagrams

- feyn - A Metafont for Feynman diagrams
- feynmf - Macros and fonts for creating Feynman (and other) diagrams

### Histograms

- histogr - Draw histograms with the LaTeX picture environment

### Karnaugh-Maps, and Veitch-Charts

- karnaugh - Macros intended for typesetting Karnaugh-Maps and Veitch-Charts in a simple and user-friendly way

### Logic Diagrams

- logic - A MetaFont font for drawing logic diagrams

### Nassi-Schneidermann Diagrams

- nassflow - Drawing Nassi-Schneidermann diagrams
- struktex - Draw Nassi-Schneidermann charts using pict2e

### Pictex

- pictex - Picture drawing macros for TeX and LaTeX
- pictex2 - Adds relative coords and rules for dots in plots to standard PiCTeX

### Postscript Macros for Drawing

- pstricks - PostScript macros for color, graphics, pie charts, rotation, trees and overlays, supplying many special features

### Syntax Diagrams

- rail - A C program and LaTeX package to draw syntax diagrams specified in EBNF
- semantic - Eases the typesetting of notation of semantics and compilers. Includes T-diagrams, various derivation symbols and inference trees
- syngen - A tool for generating syntax diagrams from BNF\@
- syntax-mdw - Typeset syntax descriptions
- syntax2 - Creation of syntax-diagrams

### Timing Diagrams

- timing - Fonts and macro package for drawing timing diagrams

### Vector Arrows

- esvect - Write vectors using an arrow which is different to the Computer Modern one

### Tools

- Array Maker - A program for making latex and xypic arrays
- gnuplot - General purpose plotting program for generating almost any type of chart you wish and save it in LaTeX format or as EPS (or in any of a dozen other formats)

### Misc

- borceux - Diagram macros by Francois Borceux
- expressg - A MetaPost package providing facilities to assist in drawing diagrams that consist of boxes, lines, and annotations. Particular support is provided for creating EXPRESS-G diagrams
- kuvio - Drawing macros and fonts for diagrams
- m-pictex - Solves the `out of dimen' problem that somethimes occours when using PiCTeX (especially together with LaTeX)
- mdwtools - Miscellaneous tools by Mark Wooding
- pb-diagram - A diagram package using LAMSTeX or Xy-pic fonts
- xypic - A package for typesetting a variety of graphs and diagrams with TeX

## Adding some Colour and Shading

There are more packages for adding some colour to tables.

- backgrnd - Mark text with grey background or change bar in plain TeX
- changebar - Generate changebars in LaTeX documents
- color - Allows text and page background colors to be set
- colorinfo - Retrieve color model and values for defined colors
- colorsep - Support for colour separation when using dvips
- contour - Generates a colored contour around a given text in order to enable printing text over a background without the need of a color box around the text
- pstricks - PostScript macros for color, graphics, pie charts, rotation, trees and overlays, supplying many special features
- shadethm - Package to produce shaded boxes, requiring the color package
- shading - Putting text on a shaded background. requires a PostScript printer and dvi-file converter
- shadow - Shadows
- xcolor - Provides easy driver-independent access to several kinds of color tints, shades, tones, and mixes of arbitrary colors; allows to select a document-wide target color model and offers complete tools for conversion between eight color models

## Typesetting Exam Scripts, Quizzes, and Questionnaires

- answers - Styles for setting questions (or exercises) and answers
- anufinalexam - This LaTeX document shell is created for the standard formatting of final exams in The Australian National University
- exam - Package for typesetting exam scripts
- examdesign - LaTeX class for typesetting exams
- exams - Exam questions can be multiple choice or free form long/short answer questions. Options include the typesetting of the exam itself, an exam showing all the answers and a collection of questions and answers. Questions can be parameterized. Use of a random generator provides for automatic shuffling of multiple choice items
- exerquiz - Environments for defining exercises and quizzes. The quizzes are graded and optionally corrected by JavaScript.
- flashcard - Cards with a question on one side and the answer on the other
- qcm - A LaTeX2e class for making multiple choices questionnaires

## Music

- abc2mtex - Notate tunes stored in an ascii format (abc notation)
- concprog - A class which provides the necessary macros to prepare a (classical) concert programme
- musicref - Reference page for musictex
- musictex - Typesetting music with TeX
- musixtex - Extended MusicTeX, with better slurs
- songbook - Package for typesetting song lyrics
- underbracket - Draw brackets to underline (song) text

## Poetry and Drama

There are some more packages for those interested in the Humanities, including work on critical editions.

- dialogue - Quote short scripted dialogue in LaTeX
- drama - Macros for typesetting a basic production-style stage script
- dramatist - A package for typesetting drama both in verse and in prose
- edmac - Typesetting scholarly critical editions
- ledmac - A macro package for typesetting scholarly critical editions
- play - Typesetting of plays, including options for line numbering
- poemscol - A set of LaTeX macros for typesetting critical editions of poetry
- plari - A document class for typesetting stageplay scripts
- sides - A class for typesetting stage plays, based on the plari class
- stage - A LaTeX class for creating plays of any length in a standard manuscript format for production and submission
- verse - Aids for typesetting simple verse
- xmlplay - An xmltex package for typsetting the plays of Shakespeare, as marked up by Jon Bosak

## Cooking Recipes

- cooking - Typeset recipes
- recipe - Typeset recipes

## Documenting Games

- backgammon - Typesetting backgammon boards
- bakoma-games - Includes popular macro packages described in chapters 7 (Preparing music scores: MusiXTeX) and 8 (Playing games: Chess, Xiangqi - Chinese Chess, Go, Backgammon, Bridge, Crosswords) of the "LaTeX graphics Companion"
- bg - Annotate backgammon matches and positions
- cheq - Adobe chess font
- cchess - Typesetting Chinese Chess board diagrams
- chess - Fonts for typesetting chess boards
- go - Fonts and macros for typesetting go games
- igo - Fonts and macro to typeset Go diagrams
- othello - Create othello boards in LaTeX
- skak - Typeset chess games using PGN and show diagrams of the current board in the document

## Crossword Puzzles

- crosswrd - Brian Hamilton Kelly's crosswrd package updated to run with LaTeX2e
- cwpuzzle - Typeset crossword puzzles

## CD and MC Covers

- cd -
- cdcover - Typeset CD covers
- cdlabeler - Take user text and typeset it to fit a CD label
- mceinleger - Creating MC-covers on your own, requiring the rotating package

## Support for the Blind

- braille - Support for braille

## Using different character sets

- codepage - Support for variant code pages
- inputenc - Control input encoding
- unicode - Map unicode to LaTeX macros and use UTF-8 input encoding
- u8tex - Emacs Mule facility to input Unicode characters in TeX notation

## Developing and Documenting LaTeX Packages

- afterpage - Implements a command that causes the commands specified in its argument to be expanded after the curent page is output
- at - A package to remove a lot of tedious typing that ends up in LaTeX documents by expanding the number of short command names available. The new command names begin with the "@" character, rather than the conventional backslash, so you can tell them apart
- blindtext - Provides `blind', or dummy text for testing purposes, similar to lipsum
- clefval - Key/value support with a hash
- compsci - A LaTeX package useful whenever writing about programming, but especially when writing about TeX
- doc - Contains the definitions that are necessary to format the documentation of package files (Literate LaTeX) which incorporate both the documentation and the code
- docstrip - Makes a package documentation file smaller by removing comments and other sections of the document conditionally
- How to Package Your LaTeX Package - Tutorial on writing .dtx and .ins files
- everyshi - Introduces a new hook for taking action at every \shipout
- frankenbundle - Develop and distribute groups of LaTeX packages and classes and BibTeX bibstyles
- ifmtarg - If-then-else command for processing potentially empty arguments
- ifthen - Conditionals in LaTeX2e documents (if – then – else etc.)
- keyval - Process 'key=value' schemes
- lipsum - Provides `lorem ipsum' dummy text, similar to blindtext
- makedtx - Perl script to help generate dtx and ins files
- moredefs - LaTeX defining, expansion, and debugging commands
- processkv - Process key-value pairs
- pst-xkey - Key-value syntax for pstricks packages
- stdclsdv - Provide sectioning information for package writers
- suffix - Enables you to define and maintain command variants like \macro*
- texpack - Scripts to create documented LaTeX style, class files and docs in a Unix environment
- xkeyval - Extension of the keyval package

## (La)TeX Distributions

texlive provides tetex for Unices (including Mac OS X) and fptex for Windows.

- base - Definitive source of Plain TeX on CTAN
- latex - LaTeX is a (and probably the most) popular macro package for TeX
- latex209 - The pre-1993 LaTeX, now no longer supported

### Unices:

- tetex - A comprehensive distribution of TeX, LaTeX and family, particulalry designed to be very easy to install on *ix platforms, included in texlive
- VTeX/Free - TeX system and PDF support for Linux and OS/2
- web2c - The "standard" source C version of the TeX sysmtem

### DOS:

- emtex - A TeX system for MS-DOS

### OS/2:

- emtex-os2 - A TeX system for os2
- VTeX/Free - TeX system and PDF support for Linux and OS/2

### Windows:

- bakoma - A Comprehensive TeX system for MS-Windows for preparing electronic documents
- bakoma-fonts - Computer Modern and AMS fonts in PostScript Type1 form
- bakoma-games - BaKoMa modules for music and games
- emtexgi - A MS-Windows interface to emTeX
- fptex - A distribution of TeX for MS-Windows based on web2c and tetex using InstallShield for installation, included in texlive
- miktex - A distribution of TeX and friends for MS-Windows95 and MS-Windows-NT. Features include easy installation and configuration, and full TeX and LaTeX support
- miktex-axp - A port of MiKTeX to MS-Windows-NT on the Alpha
- protext - A miktex-based TeX installation for MS-Windows

### Macintosh:

Gary L. Gray and Joseph C. Slater have compiled a comprehensive site for the Macintosh TeX community.

- cmactex - This port of TeX for the Macintosh includes Omega and pdfTeX.
- macbibtex - A port of BibTeX which is distributed with OzTeX for the Macintosh OS
- oztex - TeX for the Macintosh
- oztex-german - German version of oztex
- tetex - A comprehensive distribution of TeX, LaTeX and family, particulalry designed to be very easy to install on *ix platforms, included in texlive

### Misc:

- amiweb2c - An Amiga port of the complete UNIX-TeX system
- pict2e - New implementation of picture commands

## E-TeX

- e-tex - An extension of TeX with several significant programming enhancements

## ConTeXt

ConTeXt is another macro package for using TeX, so it supplies an alternative to LaTeX. The ConTeXt project has a rather lively mailing list.
For those speaking German there is a comprehensive paper by Günter Partosch summarising his talk on ConTeXt vs. LaTeX held at a Dante meeting in 2003.

- context - A full featured, parameter driven macro package, which fully supports advanced interactive documents. ppchtex is a module that can be used to typeset chemical formulas
- context-bib - ConTeXt bibliography module
- context-maths - ConTeXt versions of LaTeX speciality maths packages

## Omega

- aleph - An development of omega
- antomega - Alternative language support for omega/ lambda
- omega - Still experimental software, Omega is intended for multilingual typesetting. It uses unicode, and has additional primitives for (among other things) bidirectional typesetting
- omegabase - Basic support files for Omega
- omegafonts - Omega fonts

## Editors

See also LyX.

- auctex - Provides an excellent environment for TeX/LaTeX document production
- kile - A user-friendly TeX/LaTeX editor for KDE
- LaTable - A near-WYSIWYG editor for LaTeX tables
- lated - A graphical editor for drawings in the LaTeX ``picture'' environment running under MS-DOS and MS-Windows
- meta-mode - A GNU Emacs Lisp package that implements a major mode for editing MetaFont or MetaPost sources
- MPEdit - MetaPost text editor for Win32
- nedit-latex-extensions - The NEdit LaTeX-Mode
- ntemacs - A distribution of Emacs for MS-Windows32 machines
- texed - A TeX shell for OS/2, FSS-TeXEdit provides an easy interface for LaTeX2e, dvips, GhostScript and ispell
- texniccenter - An integrated development environment (IDE) for developing LaTeX documents on Windows
- texshell32 - A free TeXShell for MS-Windows
- u8tex - Emacs Mule facility to input Unicode characters in TeX notation
- winedt - A full-featured text editor and Shell for MS-Windows allowing the editting of large, multiple, text files in the usual MS-Windows way
- winshell - A MS-Windows32 user interface for TeX

## LyX

- lyx - is not an editor, but a frontend to LaTeX available for Unix-like platforms as well as MS Windows, and the Macintosh, offering a "what-you-see-is-what-you-mean" approach to working with text, different to the "what-you-see-is-what-you-get" way common to word processors

## MicroIMP

- MicroIMP - Unlike lyx which pursues a "what-you-see-is-what-you-mean" approach MicroIMP is a true "what-you-see-is-what-you-get" word processor based on a LaTeX system by Micropress Inc.

## Previewers and Plugins

- acroread - A tool from Adobe for reading Adobe PDF files available for a variety of architectures
- autoview - While you are editing your file.tex, autoview will (run in a separate emacs and) continually, intelligently, and automatically keep processing your latex file, generate a .ps file and gv (view) the file for you
- dviwin - A screen and printer driver for TeX DVI files under Windows 3.1 and Windows NT
- ghostscript-afpl - Freely available PostScript interpreter available for many platforms
- ghostscript-gpl - Freely distributable version of the AFPL ghostscript interpreter available for many platforms.
- ghostview-mac - Ghostview for cmactex to preview PostScript documents
- gsview - A graphical interface for ghostscript under MS-Windows or OS/2
- javadvi - A DVI viewer and printer coded in Java
- mdvi - A previewer for DVI files
- ps_view - A PostScript preamble providing an interactive environement for fast previewing of PostScript documents with ghostscript
- techexplorer - Netscape Plugin for viewing TeX and LaTeX sources available for most platforms
- windvi - A port of xdvi to Windows for previewing DVI files
- xdvi - A dvi previewer for the X Window System
- xpdf - Previewing and manipulating upon PDF files on most platforms available

## Spelling Checker

- amspell - A spell checker for plain ASCII files, with some special features for dealing with TeX files for DOS systems
- aspell - GNU Aspell is a Free and Open Source spell checker designed to eventually replace ispell
- check - The checker provides syntax checking and automatic labelling, together with some support for German documents
- chktex - Finds typographic errors in LaTeX
- excalibur - A spelling checker for the Macintosh that is also LaTeX aware
- fourspell - Windows32 spell checker for TeX, RTF, HTML, and BibTeX the dictionaries of which are compatible with WinEdT
- ispell - A fast screen-oriented spelling checker that shows you your errors in the context of the original file, and suggests possible corrections when it can figure them out
- jspell - An ASCII file spelling checker

## Converters

### TeX, and Word Processors:

You may now input text using OpenOffice Writer and later convert it to LaTeX with Java-based Writer2LaTeX.
If you are using LyX there are two converters coming with LyX for importing LaTeX files: reLyX (a perl script), and tex2lyx (still experimental).
The TUG offers an overview of converters from PC Textprocessors to LaTeX and vice versa From LaTeX to PC. Some of the converters between LaTeX and word processor formats can be found on CTAN:

- catdoc - Converts binary MS-Word files into ascii text, optionally with some TeX control sequences
- latex2rtf - Convert LaTeX into Rich Text Format
- tex2rtf - Convert TeX into Rich Text Format
- word2x - A word 6 to anything converter, currently supporting output formats in text and LaTeX
- WordML2LaTeX - A XSL stylesheet that transforms a Word document (WordML) in a LaTeX2e source for using MS Word as a front end for LaTeX.

### TeX to HTML:

- bbl2html - Convert a LaTeX .bbl file to formatted html code
- bibhtml - Consists of a Perl script and a BibTeX style file, which together allow you to compile a bibliography for a collection of HTML files
- bib2xhtml - A program that converts BibTeX files into HTML (specifically XHTML 1.0)
- latex2html - A Perl program that translates LaTeX into HTML
- ltoh - A converter from LaTeX to HTML
- tex4ht - A converter from TeX and LaTeX to hypertext (HTML, XML, etc.), providing a configurable (La)TeX-based authoring system for hypertext
- tex_converter - Windows front-end to various LaTeX to HTML converters
- tth - A TeX to HTML translator
- typehtml - Typeset HTML directly from LaTeX that can handle almost all of HTML2, and most of the math fragment of the draft HTML3

### HTML to TeX:

- hyperlatex - A package that allows you to prepare documents in HTML and to produce a neatly printed document from your input using LaTeX. It is not a LaTeX to html converter

### Font Formats:

- fontinst - TeX macros for converting Adobe Font Metric files to TeX metric and virtual font format
- mf2pt1 - Produce PostScript Type 1 fonts from MetaFont source
- mf2pt3 - Perl script to generate PostScript Type 3 fonts from MetaFont sources by processing
- ttf2mf - MS program to convert True Type to metafont
- ttf2pk - This tool rasterizes the glyph outlines of a TrueType font into a bitmap font in PK format as part of the FreeType package
- ttf2pt1 - A tool that converts True Type fonts into PS Type 1 fonts
- ttf2tex - A Bash script which will create all files neccessary to use TrueType fonts with teTeX from a set of TTF files
- ttf2tfm - Extracts the metric and kerning information of a TrueType font and converts it into metric files usable by TeX (quite similar to afm2tfm which is part of the dvips package)
- ttftogf - Convert MS-Windows True Type fonts to GF format

### Misc:

There is Calc2LaTeX for converting OpenOffice spreadsheets to LaTeX tables.

- a2ping - A UNIX command line utility written in Perl that converts many raster image and vector graphics formats to EPS or PDF and other page description formats
- bib2xhtml - A program that converts BibTeX files into HTML (specifically XHTML 1.0)
- bmeps - Converter from PNG/JPEG/TIFF/NetPBM to EPS
- catdvi - A DVI to plain text translator capable of generating ASCII, Latin-1 and UTF-8 (Unicode) output
- convert - Convert a file in an 8-bit character set to one that uses Knuth's notation for non-ASCII characters
- csvtools - Allows you to repeatedly perform a set of LaTeX commands on data in each row of a comma separated variable (CSV) file
- dvi2tty - A DVI driver to produce an ASCII representation of the document
- delimtxt - Read and parse text tables
- Excel-to-LaTeX - Convert Excel spreadsheets to LaTeX tables (works with Excel up to Excel 97)
- mif2xfig - A tool to convert diagrams from Frame Maker's MIF format to XFig's format, and vice versa
- png2pdf - PNG to PDF converter
- psrip - Extracts images from PostScript files
- pstoedit - Translate PostScript and PDF to other formats
- pstotext - Extract ASCII from PostScript and PDF which uses ghostscript, but does a more careful job with kerned characters and nonstandard font encodings than Ghostscript's ps2ascii utility
- txt2latex - A small Perl script intended to facilitate batch conversion of largely unformatted ASCII text for use with LaTeX
- txt2tex - Converts plain text into something with a little LaTeX formatting
- xl2latex - Convert Excel (97 and above) tables to LaTeX tabulars

## Using Perl with LaTeX

- perltex - Define LaTeX macros in terms of Perl code

## Using SGML and XML with LaTeX

- jadetex - Macro package on top of LaTeX to typeset TeX output of Jade DSSSL implementation TeX Catalogue
- sgmlcmpt - Suppport for LaTeX formulae as SGML PCDATA
- xmlplay - An xmltex package for typsetting the plays of Shakespeare, as marked up by Jon Bosak
- xmltex - Support for parsing XML documents

## Some more binaries

- bzip2 - Compression program

## Miscellanous Packages

- aaai - AAAI style
- abstyles - No description available
- alatex - ALaTeX provides the user with all the functionality of LaTeX but with one small change: a general, legal way to override standard LaTeX behavior without altering source files
- autoconf - LaTeX for Autoconf is a set of macros in the M4 language to test if latex is installed or if some package exists or some other conditions apply
- basix - A BASIC interpreter written in TeX
- begriff -
- eplain - Simple but powerful extended version of the plain format, adding support for bibliographies, tables of contents, enumerated lists, verbatim input of files, numbered equations, tables, two-column output, footnotes and commutative diagrams
- wordcount - Estimate the number of words in a LaTeX document