Пакет глоссариев и сноска в LaTeX

Я в настоящее время застрял, имея два отдельных глоссариев: main & acronyms, Acronyms глоссарий печатает сноски при первом использовании в тексте, но main глоссария нет. Есть ли способ сделать любой другой глоссарий acronyms напечатать сноску при первом использовании термина? Я не понимаю, как это сделать.

Вот пример кода, скомпилированный с TeXnic Center и MiKTeX 2.7:

\documentclass{article}
\usepackage{index}
\usepackage[toc,style=long3colheaderborder,footnote,acronym]{glossaries} 

\makeindex 
\makeglossaries


\newglossaryentry{appdomain}{name={application domain}, description={app Domain Description...}}
\newglossaryentry{sample}{name={[has been inserted aaa]},description={testing testing 123}}

\newacronym{aca}{aca}{a contrived acronym}

\begin{document}
\section{this is a test section}
This is the test line... a \gls{sample} \gls{appdomain} 
\index{entry} and \gls{aca}
\thispagestyle{empty}\cleardoublepage

\printglossary[type=main,title={Glossary},toctitle={Glossary}]
\thispagestyle{empty}\cleardoublepage
\printglossary[type=\acronymtype,title={List of Abbreviations},toctitle={List of Abbreviations}]

\printindex
\thispagestyle{empty}\cleardoublepage
\end{document}

Я хочу, чтобы sample и appdomain содержали сноску с описанием или сноску: пожалуйста, обратитесь к Глоссарию

Большое спасибо,
Ованес

3 ответа

Решение

Короче говоря, с glossaries пакет, вы не можете получить сноски при первом использовании для глоссариев не акроним.

Тем не менее, вы можете переопределить некоторые команды в преамбуле (после того, как вы \usepackage{glossaries}) чтобы получить то, что вы хотите:

\makeatletter
\renewcommand{\gls@main@displayfirst}[4]{
  #1#4\protect\footnote{#2}
}
\makeatother

Но это будет действительно хрупким.

Я думаю, что есть более простой способ сделать это. Может быть, это новое, но

\defglsdisplayfirst[main]{#1#4\protect\footnote{#2}}

кажется, чтобы достичь того же самого (поправьте меня, если я ошибаюсь). Увидеть glossaries инструкция, версия 2.03, подраздел 2.4.1, изменение формата текста.

К сожалению, появляется такие команды, как \gls или же \autoref не работает в этих сносках.

Ниже приведен хороший метод, чтобы добавить сноску, в которой указаны определения:

\label{nom} %put this on the page your term appears, so that it can collect page number

\newcommand{\g}{\footnote{For all abbreviations see the glossary on page \pageref{nom}.}}

Я нашел это отсюда.

Другие вопросы по тегам