Un buen libro de consulta tiene que tener un índice de palabras. Y LaTeX permite crearlo fácilmente con el paquete makeidx.
El paquete makeidx funciona de una manera un poco curiosa. Primero, antes de \begin{document} tendremos que poner \makeindex, para que cree el índice. Y con \printindex (dentro ya del cuerpo del documento), insertaremos el índice donde queramos.
\documentclass[a4paper,openright,12pt]{report}
\usepackage[spanish]{babel} % español
\usepackage[latin1]{inputenc} % acentos sin codigo
\usepackage{makeidx}
\makeindex % para que cree el índice (pero aún no decimos dónde)
\begin{document}
\addcontentsline{toc}{chapter}{Índice alfabético} % para que lo añada al índice de contenidos
\printindex % para que ponga el índice aquí
\end{document}
Nota: Es importante añadir la línea \addcontentsline, para que el índice de palabras aparezca en el índice de contenidos.
Ahora, cuando queremos añadir una palabra al índice, basta con poner justo detrás de la palabra \index{nombre}:
Algunos de mis animales favoritos son el erizo\index{erizo} y el armadillo\index{armadillo}.
Para poner palabras como dependientes de otras, se utiliza el comando:
\index{palabrapadre!palabrahija}:
\index{palabrapadre!palabrahija}:
Las flores\index{flores} son muy bonitas. Como la rosa\index{flores!rosa}, la margarita\index{flores!margarita} o la violeta\index{flores!violeta}.
Por último, si queremos poner un "véase" o "véase también", hay que poner |see{palabra} o |seealso{palabra}.
Alegra tu cuarto con alguna planta\index{planta|see{flores}}.
Alegra tu cuarto con unas cuantas florecitas\index{florecitas}\index{florecitas|seealso{flores}}.
Cuando la palabra que vamos a usar en el índice, tiene símbolos no anglosajones, hay que tener cuidado. El paquete makeidx, por ejemplo, entiende que "a" y "á" son dos letras distintas, y las ordena alfabéticamente separadas y mal. Por ejemplo, si escribimos:
Ejemplo: lana\index{lana}, lápiz\index{lápiz}, lata\index{lata}.
Ordenaría incorrectamente como: lápiz, lana, lata.
Lo que habría que poner sería:
Ejemplo: lana\index{lana}, lápiz\index{lapiz @ lápiz}, lata\index{lata}.
Así, le estamos diciendo a LaTeX que ordene "lápiz" como si fuera "lapiz".
En el caso de que la palabra tuviera una "ñ", LaTeX debería ordenarla después de todas las n. Para conseguir eso, por ejemplo, podemos sustituir "ñ" por "nzz" en la palabra:
Ejemplo: mano\index{mano}, manuel\index{manuel}, maño\index{manzzo @ maño}.