我有一个词汇表,其中包含参考书目项目的短标题和长标题。我的目标是:当一个条目第一次出现时,我想打印词汇表描述 [这是主要问题!]。如果一个条目连续出现两次,在第二次情况下,我想打印 Ibid. 而不是其标题 [这已经完成了]。否则,我想打印该条目的词汇表名称。我尝试了列表处理和其他条件,但没有成功。非常感谢您的帮助。
由于我有一个相当大的文档,其中包含 500 多个参考文献,因此我想保留已经完成的代码,但我愿意接受任何解决方案。
以下是我已经拥有的代码:
\documentclass{article}
\usepackage{xparse}
\usepackage{glossaries}
\def\mygls{empty}
\def\myftncounter{0}
\DeclareDocumentCommand{\footcite}{m}{%
\ifthenelse{\equal{\mygls}{#1}}{%
\ifthenelse{%
\equal{\myftncounter}{\thefootnote}%
}{%
\edef\thisgls{Ibid}%
}{%
\edef\thisgls{\gls{#1}}%
}%
}{%
\edef\thisgls{\gls{#1}}%
\xdef\mygls{#1}%
}%
\footnote{\thisgls}%
\xdef\myftncounter{\thefootnote}%
}
\newglossaryentry{G1}{name={short1},description={long1}}
\newglossaryentry{G2}{name={short2},description={long2}}
\begin{document}
Lorem\footcite{G1} ipsum\footcite{G1} dolor\footcite{G2} sit\footcite{G1} amet.
\end{document}