How can I have two or more distinct indexes?

The multind package provides simple and straightforward multiple indexing.

You tag each \makeindex, \index and \printindex command with a file name, and indexing commands are written to (or read from) the name with the appropriate (.idx or .ind) extension appended. To create a “general” and an “authors” index, one might write:

\usepackage{multind}
\makeindex{general}
\makeindex{authors}
...
\index{authors}{Another Idiot}
...
\index{general}{FAQs}
...
\printindex{general}{General index}
\printindex{authors}{Author index}

To complete the job, run LaTeX on your file enough times that labels, etc., are stable, and then execute the commands

makeindex general
makeindex authors

See also this FAQ: Multiple indexes

Update

multind is a package for LaTeX 2.09

Consider the following alternatives:

  • index
  • splitindex
  • imakeidx
  • the memoir class has its own multiple-index functionality

There is also imakeidx designed to provide multiple indexes (has been mentioned in a comment already, but the usage isn't shown)

Just say \makeindex[name=symbolicname,title={Foo}] to provide a special index (choose symbolicname appropiately) and \index[symbolicname]{foo} to make an index entry to this special index.

The special index is printed with \printindex[symbolicname].

Using \makeindex, \index and \printindex without optional argument will give the usual index as with makeidx.

The advantage of imakeidx is the automatic call of makeindex or texindy (if \write18 is enabled).

\documentclass{article}

\usepackage{imakeidx}

\usepackage{blindtext}

\makeindex[name=person,title={Index of persons}]

\makeindex

\begin{document}

Einstein\index[person]{Einstein}
\blindtext

Heisenberg\index[person]{Heisenberg} % Person index

\blindtext[4]

\index{foo}
\index{bar}
\blindtext

\printindex[person] % Person index
\printindex % usual index

\end{document}

enter image description here


One problem with multind is that the index heading(s) will not be formatted corresponding to your other chapter (or section) headings but simply with \Large\bf.

If you want multiple indexes that respect the general formatting of your document class (and also work with other than the standard classes), use the splitidx package.