¿Cómo genero una lista de Foos/índice de Foos, para un foo que no es de entorno?

¿Cómo genero una lista de Foos/índice de Foos, para un foo que no es de entorno?

En mi documento hablo de Foo's de varias maneras; a veces a través de un entorno de definición; a veces simplemente mencionarlos en línea; a veces de otras maneras. ¿Qué son los Foo? No importa. Tal vez sea una macro/comando específico; tal vez sea algo completamente abstracto (a lo que teóricamente podría agregar un marcador fantasma si fuera necesario).

¿Cómo generaría una "Lista de Foos" o un "Índice de Foos", con identificadores de Foos y las páginas en las que se encuentran?

Respuesta1

Aquí hay un ejemplo que le brinda listOfFoos:

% arara: pdflatex
% arara: pdflatex
\documentclass{article}

\newcommand{\foo}[1]{#1%
\addcontentsline{new}{subsection}{#1}}

\makeatletter
\newcommand{\listOfFoos}{\section*{List of foos}\@starttoc{new}}
\begin{document}

\listOfFoos
\foo{Dave}
\foo{Nate}
\foo{Pat}
\foo{Taylor}
\foo{Chris}
\foo{Rami}
\end{document}

y aquí hay un ejemplo usandoimakeidx

% arara: pdflatex: {shell: on}
\documentclass{article}
\usepackage[splitindex]{imakeidx}

% index stuff
\makeindex
\makeindex[name=myindex,title=index of foos]

\newcommand{\foo}[1]{#1%
\index[myindex]{#1}}
\begin{document}

\foo{Dave}
\foo{Nate}
\foo{Pat}
\foo{Taylor}
\foo{Chris}
\foo{Rami}
\printindex[myindex]

\end{document}

Tenga en cuenta que en el caso de imakeidxnecesitará utilizar shell-escape.

información relacionada