Список всех макровызовов

Список всех макровызовов

Предположим, у меня есть большой документ, в котором используется несколько макросов, скажем \AAA, \BBB, и т. д., по всему документу.

Есть ли способ, чтобы я мог получить список всех этих макросов в финальном pdf? Я хочу повторить все \AAAвызовы в начале, например, чтобы иметь возможность быстро просмотреть их во время написания документа.

Дополнительная функция может использовать гиперссылку, чтобы щелкнуть по одному \AAAиз элементов списка и перейти непосредственно на страницу PDF, где фактически используется макрос.

решение1

Вы можете поместить a \hypertargetв каждый вызов \AAA, где имя использует счетчик. После этого вы можете ссылаться на него по \hyperlink.

В примере и \AAA No. 1т. д. — это кликабельные ссылки.

\documentclass{article}
\pagestyle{empty}% for cropping
\usepackage{pgffor,hyperref}
\newcount\countAAA
\countAAA=0
\newcommand*\AAA{%
    \advance\countAAA by 1%
    \hypertarget{AAA\the\countAAA}{}%
    AAA% your replacement text goes here
}
\newcommand\blindtext{\par\noindent Lorem ipsum dolor sit amet \par\noindent}
\begin{document}
\section{Some text with \texttt{\string\AAA} macros}
\blindtext
\AAA
\blindtext
\AAA
\blindtext
\AAA
\blindtext
\AAA
\section{List of \texttt{\string\AAA} calls}
There are \the\countAAA\ calls of \texttt{\string\AAA} throughout the document.

\foreach \i in {1,...,\the\countAAA} {
    \hyperlink{AAA\i}{\texttt{\string\AAA} No.\ \i}
}
\end{document}

введите описание изображения здесь

Связанный контент