Welcome to the UK List of
TeX Frequently Asked Questions
on the Web


The index of Frequently Asked Questions about TeX is searchable.

Please enter your keyword here:   then press here: ,    or:

Spelling checkers for work with TeX

Most approaches to the problem (of checking your spelling) are designed to work with a plain text file; in our case, this is (La)TeX source. For the user, this is a simple-to-understand way to do the job; but for the spell-checker programmer, it requires heuristic (and hence fallible) analysis of (La)TeX macros and so on. The alternative, of viewing the text after (La)TeX has processed the results, is covered below.

For Unix, ispell was long the program of choice; it is well integrated with emacs, and deals with some TeX syntax. However, it has more-or-less been replaced everywhere, by aspell, which was designed as a successor, and certainly performs better on most metrics; there remains some question as to its performance with (La)TeX sources.

For Windows, there is a good spell checker incorporated into many of the shell/editor combinations that are available. The spell checker from the (now defunct) 4AllTeX shell remains available as a separate package, 4spell.

For the Macintosh, Excalibur has long been used; its distribution comes with dictionaries for several languages.

The VMS Pascal program spell makes special cases of some important features of LaTeX syntax.

For MSDOS, there are several programs. Amspell can be called from within an editor, and jspell is an extended version of ispell.

An alternative approach takes (La)TeX output, and checks that. A straightforward approach is to produce PDF output, and process it with pdftotext, using any plain text checker on the result (the checkers listed above all work in this rôle). For this to work reasonably well, the user should disable hyphenation before making the PDF output.

The (experimental) LuaTeX/LaTeX package spelling goes one step further: it uses lua code to extract words while typesetting is going on, but before hyphenation is applied. Each word is looked up in a list of known bad spellings, and the word highlighted if it appears there. In parallel, a text file is created, which can be processed by a ‘normal’ spelling checker to produce a revised “bad spelling” list. (The package documentation shows the end result; it includes words such as ‘spellling’, which are duly highlighted.)

support/4spell (or browse the directory); catalogue entry
support/amspell (or browse the directory)
Browse support/aspell; catalogue entry — choose just those language dictionaries (under subdirectory dict/) that you need.
systems/mac/support/excalibur/Excalibur-4.0.2.sit.hqx; catalogue entry
support/ispell (or browse the directory); catalogue entry
support/jspell (or browse the directory); catalogue entry
macros/luatex/generic/spelling (or browse the directory); catalogue entry
VMS spell
support/vmspell (or browse the directory); catalogue entry
systems/win32/winedt; catalogue entry

This answer last edited: 2013-02-21

Go to previous question, or next question

Go to FAQ home.

URL for this question: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=spell

Comments, suggestions, or error reports? - see “how to improve the FAQ”.

This is FAQ version 3.27, released on 2013-06-07.