These are the actual executable binaries which implement the different TeX dialects. When someone says "TeX can't find my fonts", they usually mean an engine.

  • The figures of the family of TeX Engines, where there are some slight differences between them.
  • TeX: Knuth's original default engine (1978).
  • TeX-XeT: It allows a user to mix texts written in left-to-right and right-to-left writing systems in the same document created by Knuth.
  • pdfeTeX
  • Omega (Ω): Unicode-based TeX (available on CTAN as part of web2c) (1994).
  • pdfTeX: Extension of pdfeTeX, a TeX variant by Hàn Thế Thành which can produce PDF output instead of DVI (1995).
  • e-TeX: "Extended TeX" (1997).
  • Aleph (א): Essentially Omega + bug fixes + e-TeX. May be folded back into Omega eventually.
  • TeXgX: A predecessor for Mac OS 7 of XeTeX.
  • NTS: NTS is a complete reimplementation of TeX in Java, aiming at full compatibility with the original engine, and providing at the same time the great modularity and extensibility that comes with that language (1998). While this extension projects were never carried out and NTS has now been officially declared dead.
  • XeTeX: A typesetting system based on a merger of Donald Knuth's TeX system with Unicode and modern font technologies (2004).
  • exTeX: ExTeX is a merger of NTS with e-TeX, pdfTeX and Omega (2002).
  • LuaTeX: Aleph + pdfTeX (2007).


These are the TeX-based languages in which you actually write documents. When someone says "TeX is giving me this mysterious error", they usually mean a format.

  • TeX: Knuth's original default format, which has 300 commands.
  • plain TeX: It comes from the original default format which adds about 600 commands.
  • LaTeX: Created by Lamport.
  • LaTeX2e: The current version of LaTeX, since it replaced Latex 2.09 in 1994.
  • LaTeX3: The successor to LaTeX (one day).
  • AMS-TeX: Developed by AMS.

Packages and Classes

These are add-ons to the basic TeX system, developed independently, providing additional typesetting features, fonts, documentation, etc. The CTAN provide access to the vast majority of packages in the TeX world.

The Structure of a LaTeX Document and The Layout of the Page:
  • ifpdf: This package looks for pdfTeX in pdf mode and implements and sets the switch \ifpdf.
  • ifthen: The package's basic command is \ifthenelse, which can use a wide array of tests. Also provided is a simple loop command \whiledo.
  • calc: Adds infix expressions to perform arithmetic on the arguments of the LaTeX commands \setcounter, \addtocounter, \setlength, and \addtolength.
  • fancyhdr: The package provides extensive facilities, both for constructing headers and footers, and for controlling their use.
  • geometry: Flexible and complete interface to document dimensions.
  • memoir: The memoir class is for typesetting poetry, fiction, non-fiction, and mathematical works.
  • indentfirst: Indent first paragraph after section header.
  • titlesec: A package providing an interface to sectioning commands for selection from various title styles.
  • titletoc: A companion for titlesec handling toc/lof/lot entries.
  • hyperref: The package extends the functionality of all the LaTeX cross-referencing commands.
Basic Formatting Tools:
  • lettrine: The lettrine package supports various dropped capitals styles, typically those described in the French typographic books. In particular, it has facilities for the paragraph text's left edge to follow the outline of capitals that have a regular shape (such as "A" and "V").
  • footmisc: A collection of ways to change the typesetting of footnotes.
  • endnotes: Accumulates footnotes and places them at the end of the document.
  • paralist
  • listings
  • multicol: The package defines a multicols environment which typesets text in multiple columns (up to a maximum of 10), and (by default) balances the end of each column at the end of the environment.
  • alltt: The package defines the alltt enviroment, which is like the verbatim enviroment except that \,{, and } have their usual meanings. Caption: Everything in tt font, but obey commands and line endings.
  • shortvrb
  • verbatim
Tabular Material:
  • array
  • langtable
  • hhline
  • booktabs
  • multirow
  • colortbl
  • Easy table: A macro package for easy table creation by Khanh Ha.
Mastering Floats:
  • float
  • caption
  • rotating
  • subfigure
Fonts and Encodings:
  • textcomp
  • pifont
  • txfonts
  • pxfonts
  • euler, beton, concrete
  • dingbat
  • latexsym
  • MinionPro, MnSymbol
  • courier
  • mflogo
Higher Mathematics:
  • amsmath: Package of AMS-TeX in LaTeX2e.
  • amsthm
  • cases
  • amsfonts: Package of AMS-TeX in LaTeX2e.
  • amssymb: Package of AMS-TeX in LaTeX2e.
  • bm: The bm package defines a command \bm which makes its argument bold.
  • 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.
  • mathrsfs
  • mathabx: Mathabx is a set of 3 mathematical symbols font series: matha, mathb and mathx. They are defined by MetaFont code and should be of reasonable quality (bitmap output). Things change from time to time, so there is no claim of stability (encoding, metrics, design). The package includes Plain TeX and LaTeX support macros.
  • extarrows: Extra Arrows beyond those provided in AMSmath.
  • diagrams: It is a macro package for drawing so-called "commutative" diagrams in category theory and related subjects.
LaTeX in a Multilingual Environment:
  • babel
Graphics Generation and Manipulation:
  • graphics, graphicx
  • xcolor, color
  • tikz
Managing Citations:
  • natbib
For Chinese:
  • cct/ccmap lsec:
  • CTeX, CTeXcap, CTeXutf8 CTeX:
  • CCT, CJKpunct home: A LaTeX2e macro package which enables the use Chinese.
  • CJK, CJKfntef, CJKnumb, xCJK home, Lemberg: A LaTeX2e macro package which enables the use of CJK scripts (Chinese/Japanese/Korean) in various encodings, written by Werner Lemberg.
  • xunicode: Ross Moore's "xunicode.sty" (formerly named "utf8accents.sty"): a package to handle traditional TeX input conventions for accents and other "special" (non-ASCII) characters when using Unicode fonts. This package allows legacy LaTeX documents to be typeset using native OS X fonts without converting the input text entirely to Unicode.
  • fontspec: The fontspec package only works with XeTeX, a unicode capable TeX-variant. It provides an automatic and unified interface for loading fonts in LaTeX. XeTeX allows a direct interface to system-installed fonts, so no manual font installation is required.
  • xltxtra: This package provides an ever increasing number of small features that are useful for XeLaTeX.
  • zhspacing: A package for helping XeTeX to deal with Chinese typesetting.
  • xeCJK: The package xeCJK allows XeLaTeX users to typeset CJK scripts easily.
  • xCJKnumber CTeX: The package CJKnumb in XeTeX, modified by jjgod et al.
  • pinyin
  • ruby
  • doc
  • Beamer: The beamer class is a LaTeX class that allows you to create a beamer presentation. It can also be used to create slides.
  • sgame and egameps: Macro packages for strategic game and extensive game, respective.
  • slashbox
  • makecell
  • animate
  • movie15

Front ends

These editors are what you use to create a document file.

  • Alpha home: Alpha is a powerful, scriptable and extensible editor, which is well configured to interact with other Mac applications, including most TeX implementations.
  • AUC-TeX GNU: AUC-TeX is an extensible package for writing and formatting TeX files in GNU Emacs and XEmacs. It supports many different TeX macro packages, including AMS-TeX, LaTeX, Texinfo, ConTeXt, and docTeX (dtx files).
  • EditPlus home, info, wiki, LaTeX2003b, LaTeX2003a, LaTeX2000, LaTeX99, TeX99, BibTeX2001b, BibTeX2001a: EditPlus is a text editor, HTML editor and programmers editor for Windows. While it can serve as a good Notepad replacement, it also offers many powerful features for Web page authors and programmers.
  • Emacs GNU, wiki: Emacs is the extensible, customizable, self-documenting real-time display editor.
  • iTeXMac home: iTeXMac is at the same time a text editor, a pdf viewer and a teTeX frontend for Mac OS X. It allows to produce very high quality documents using TeX typesetting system.
  • Kile home, KDE, wiki: Kile is a user friendly TeX/LaTeX editor for the KDE desktop environment. KDE is available for many architectures such as PC, PowerPC (Mac for example) and SPARC.
  • LaTeXEditor home: For Windows, an update of TeXnicCenter.
  • LyX home, wiki: For Windows and X, a well-developed front end for TeX.
  • Mackichan Software, Inc. home: It sells Scientific Workplace/Notebook/Word for Windows and Mac, a WYSIWYG program using TeX in the background.
  • MeWa home: Former LaTeXEditor, the Editor for LaTeX source.
  • MicroIMP home: WYSIWYG LaTeX that requires no knowledge of TeX/LaTeX programming.
  • OS/2 TeX home: Setup for OS/2 put together by Juergen Kleinboehl.
  • pfe home: (Programmer's File Editor) for Windows.
  • SciTE home: For Windows and X, a free source code editor.
  • TeXmacs home: A WYSIWYG editor for typing technical and mathematical text.
  • TeXmaker home: For Unix, MacOSX and Windows, well-developed and documented front-end for LaTeX
  • TeXnicCenter home, wiki: TeXnicCenter is a feature rich integrated development environment (IDE) for developing LaTeX-documents on Microsoft Windows freely available under GPL.
  • TeXShop home, wiki, cocoa: TeXshop is a TeX previewer for Mac OS X, written in Cocoa.
  • TeXworks TUG: The TeXworks project is an effort to build a simple TeX front-end program (working environment) that will be available for all today's major desktop operating systems—in particular, MS Windows (XP and Vista), typical GNU/Linux distros and other X11-based systems, and Mac OS X.
  • UltraEdit home, wiki, TeX/LaTeX, LaTeX, BibTeX, LaTeX Tags: UltraEdit is the ideal text, hex, HTML, PHP, Java, Javascript, Perl, and programmer's editor.
  • Vim home, VIM-LaTeX: Vim is an advanced text editor that seeks to provide the power of the de-facto Unix editor 'Vi', with a more complete feature set.
  • WinEdt home, tug, org-community, Yahoo, wiki: WinEdt (shareware) is a powerful and versatile ASCII editor and shell for MS Windows with a strong predisposition towards the creation of (La)TeX documents.
  • WineFish home: Its environment is Gnome, and Operating System is Linux and Mac OS X with Programming Language C.
  • Winshell home, wiki: WinShell is a free multilingual integrated development environment (IDE) for LaTeX and TeX for Windows.
  • XEmacs home, wiki: XEmacs is a highly customizable open source text editor and application development system. It is protected under the GNU Public License and related to other versions of Emacs, in particular GNU Emacs

Graphics Tools

  • Asymptote: A modern MetaPost replacement with a C++-like syntax and floating-point numerics, by Andy Hammerlindl, John Bowman, and Tom Prince.
  • ImageMagick: ImageMagick is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (over 100) including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG, and TIFF.
  • Inkscape: A multi-platform graphics editor based on SVG.
  • MetaPost: John Hobby's version of Metafont that makes EPS files.
  • PGF and TikZ: PGF is a TeX macro package for generating graphics. It is platform- and format-independent and works together with the most important TeX backend drivers, including pdftex and dvips. It comes with a user-friedly syntax layer called TikZ.
  • PSTricks: Notes by Denis Girou (including bug list). PSTricks is PostScript Tricks, viewing your PS output with a PS viewer is appropriate.
  • Xy-pic: Kristoffer Rose and Ross Moore's graphics package using the principle of logical composition of visual components, specialising in commutative diagrams.


These are the large collections of TeX-related software to be downloaded and installed. When someone says "I need TEX on my system", they're usually looking for a distribution.

  • emTeX home@CTAN: A TeX system for MS-DOS and OS/2.
  • MiKTeX home, source, wiki: An independent distribution for Windows with a flexible package manager based on TeX, pdfTeX, XeTeX, Omega, NTS.
  • ConTeXt pragma, wiki, garden: ConTeXt is a special case straddling levels. It contains a format at the level of plain TeX and LaTeX, but unlike the other formats, it is invoked via a separate utility(e.g., texmfstart) which then indirectly runs the TeX engine
  • WEB2C home@tug WEB@wiki, CWEB: WEB2C is an implementation of TeX and friends which translates the original WEB sources written by Donald Knuth into C, so they can be readily compiled on modern systems. WEB2C is now maintained as part of TeX Live, and has not been independently released in some years. teTeX(Unix) bases on it, TeX live(Win32) includes it, and fpTeX(Win32) is its distribution
  • TeX live home@tug, wiki: Its Unix/linux distribution is an 1st distribution.
  • teTeX home@tug, wiki, Thomas Esser: teTeX is a complete TeX distribution for UNIX compatible systems, maintained by Thomas Esser. It is based on the WEB2C distribution which is currently maintained by Olaf Weber.
  • fpTeX home@tug: WEB2C distribution on Win32 platform. WEB2C is a port of the TeX system to the C language. This port is at the heart of the widely used teTeX distribution of TeX for Unix. In 1997, Web2C has been ported natively to Windows by Fabrice Popineau. It has been included on the TeX live cdrom as the Win32 platform. It is also available as a standalone distribution under the name fpTeX.
  • W32TeX home: W32TeX provides for small segmented downloads to allow a user to get just the pieces that are needed. Based on a Japanese implementation of TeX, it is directed mainly at users of a more technical bent who are already familiar with TeX systems, and are willing to give up a graphical interface and convenience for direct control.
  • PCTeX home: PCTeX for Windows provides a completely integrated TeX and LaTeX system for professional typesetting of books, technical journals, and other documents.
  • JadeTeX home, OpenJade@source, DSSSL@home, DSSSL@wiki, SGML@wiki, XML@home, XML@wiki: JadeTeX is a TeX macro package for processing the output from Jade/OpenJade in TeX (-t) mode.
  • CMacTeX home: CMacTeX is an integrated suite of programs for implementing TeX on the Macintosh by Tom Kiffe.
  • etTeX home: exTeX is not only an engine, but also a distribution.
  • OzTeX home, TUG: For the Macintosh, by Andrew Trevorrow.
  • True TeX home: It is a TrueType based TeX for Windows.
  • Y&Y TUG, google: It was a TeX system for Windows; they're out of business now, but their web pages are available here.
  • VTeX home: It includes a TeX IDE, visual tools, HTML, PDF, PS and SVG backends, and many math and text fonts.
  • 3B2 home: It made by Advent Publishing Systems, Ltd., high-end professional publishing with built-in WYSIWYG TeX support and full SGML conformance. Offices in the UK, Ireland, USA.
  • Blue Sky Research home: It sells Textures for Macintosh.

2nd Distributions

These are the large collections of TeX-related software to be downloaded and installed within some distributions.

  • TeX live tug, wiki: Its Windows distribution, based on fpTeX or W32TeX.
  • MacTeX home, wiki: TeX live with additions and easy installation for Mac OS X based on teTeX and TeX live.
  • proTeXt tug, info, wiki: MiKTeX with additions and a thorough installation guide for Windows.
  • CTeX home, bbs: CTeX bases on MiKTeX for Windows with WinEdt, PostScript, GhostScript and Gsview.
  • ChinaTeX home:
  • XEmTeX home: XEmTeX is an integrated distribution of TeX, LaTeX, ConTeXt , XEmacs and friends for Windows.
  • USBTeX home: A self-contained live system for Windows that can be run from, e.g., a USB stick with no installation.
  • Knoppix home: A live GNU/linux system on a bootable CD that includes TeX.
  • BaKoMa TeX home@CTAN, mailing list: BaKoMa TeX is a complete TeX/LaTeX implementation for MS Windows with Visual (True WYSIWYG) LaTeX Editor -- BaKoMa TeX Word.

Output formats

TeX source files can be typeset into several different output formats:

  • DVI (Device independent file format): The Device independent file format is output by the TeX typesetting system, and can be used for generating device-specific commands that can be viewed or printed; for example, translation to PostScript.
  • HTML (HyperText Markup Language): As HTML is the standard language for documents presented on the World Wide Web, this output format can effectively be used to produce online documentation pages.
  • PDF (Portable Document Format): Based on the PostScript language, this format was developed by Adobe Systems for portable document interchange. like the PostScript format, it can represent the exact appearance of a document and supports arbitrary scaling. It is intended to be platform-independent and can be viewed with a large variety of software.
  • PS (PostScript): PostScript is a page description language and programming language used primarily in the electronic and desktop publishing areas.

Chinese TeX

CTeX home, bbs, ftp, USTC ftp, TeXGuru, USTCThesis home, ChinaTeX home, CCT home, TYTeX(天元) home, TTFSetup home, LaTeX编辑部 home, 浙江大学 home, 华东师大 home, CTUG home, 哈工大 ftp, 南开 home, LaTeX学习 home, YinDian google, liangzi CTeXlive, Neals(陈之初) google, littleleo(薛瑞尼) home, Hooklee(李树钧) Homepage, 王垠 homepage, mytex(孙文昌) homepage, gzmfig, lapackapi(莫图) google, cvgmt google, YiYanrui homepage, 王越 live, jjgod homepage, Alpha Huang homepage, Edward G.J. Lee homepage, 方正字库 homepage, 李东风.


Of course, this short web page only covers the basics. Here are some pointers to further information.

Private material

Content with a password

Page last updated: August 23, 2013

Leave a Reply

Your email address will not be published. Required fields are marked *