TeX-friendly editors and shells

There are good TeX-writing environments and editors for most operating systems; some are described below, but this is only a personal selection:

Unix
Try GNU emacs or XEmacs, and the AUC-TeX bundle (available from CTAN). AUC-TeX provides menu items and control sequences for common constructs, checks syntax, lays out markup nicely, lets you call TeX and drivers from within the editor, and everything else like this that you can think of. Complex, but very powerful.

Many who consider the versions of emacs spawn of the devil, prefer vim, a highly configurable editor (also available for Windows and Macintosh systems). Many plugins are available to support the needs of the (La)TeX user, including syntax highlighting, calling TeX programs, auto-insertion and -completion of common (La)TeX structures, and browsing LaTeX help. The scripts auctex.vim and bibtex.vim seem to be the most common recommendations.

The editor NEdit is also free and programmable, and is available for Unix systems. An AUC-TeX-alike set of extensions for NEdit is available from CTAN.

LaTeX4Jed provides much enhanced LaTeX support for the jed editor. LaTeX4Jed is similar to AUC-TeX: menus, shortcuts, templates, syntax highlighting, document outline, integrated debugging, symbol completion, full integration with external programs, and more. It was designed with both the beginner and the advanced LaTeX user in mind.

The Kile editor that is provided with the KDE window manager provides GUI “shell-like” facilities, in a similar way to the widely-praised Winedt (see below); details (and downloads) are available from the project’s home on SourceForge. A newer system (by Kile’s original author), texmaker doesn’t rely on KDE’s facilities, and so may be more easily portable.

MSDOS
TeXshell is a simple, easily-customisable environment, which can be used with the editor of your choice.

You can also use GNU emacs and AUC-TeX under MSDOS.

Windows ’9x, NT, etc.
TeXnicCenter is a (free) TeX-oriented development system, uniting a powerful platform for executing (La)TeX and friends with a configurable editor.

Winedt, a shareware package, is also highly spoken of. It too provides a shell for the use of TeX and related programs, as well as a powerful and well-configured editor. The editor can generate its output in UTF-8 (to some extent), which is useful when working with XeTeX (and other “next-generation” (La)TeX applications).

Both emacs and vim are available in versions for Windows systems.

OS/2
epmtex offers an OS/2-specific shell.
Macintosh
The commercial Textures provides an excellent integrated Macintosh environment with its own editor. More powerful still (as an editor) is the shareware Alpha which is extensible enough to let you perform almost any TeX-related job. It works well with OzTeX. From release 2.2.0 (at least), Textures works with MacOS X.

For MacOS X users, the free tool of choice appears to be TeXShop, which combines an editor and a shell with a coherent philosophy of dealing with (La)TeX in the OS X environment. TeXShop is distributed as part of the MacTeX system, and will therefore be available out of the box on machines on which MacTeX has been installed.

Vim is also available for use on Macintosh systems.

Atari, Amiga and NeXT users also have nice environments. LaTeX users looking for make-like facilities should review the answer on Makefiles for LaTeX documents.

While many (La)TeX-oriented editors can support work on BibTeX files, there are many systems that provide specific “database-like” access to your BibTeX files — see “creating a bibliography file”.

alpha
nonfree/systems/mac/support/alpha (gzipped tar, browse)
auctex
support/auctex (gzipped tar, browse)
epmtex
systems/os2/epmtex (gzipped tar, browse)
LaTeX4Jed
support/jed (gzipped tar, browse)
Nedit LaTeX support
support/NEdit-LaTeX-Extensions (gzipped tar, browse)
TeXnicCenter
systems/win32/TeXnicCenter/
TeXshell
systems/msdos/texshell (gzipped tar, browse)
TeXtelmExtel
systems/msdos/emtex-contrib/TeXtelmExtel (gzipped tar, browse)
winedt
systems/win32/winedt/

This question on the Web: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=editors