我定义缩写词如下:
\newacronym{sdk}{SDK}{Software Development Kit}
在文中使用它:
- 第 3 页:测试 \acrshort{sdk}
- 第 6 页:测试测试 \acrshort{sdk}。
- 第 9 页:测试 \acrshort{sdk}
并像这样打印:
\printglossary[type=\acronymtype]
结果如下:
软件开发工具包软件开发套件。3、6、9
问题:
我怎样才能只显示第一次出现的内容?
像这样:
软件开发工具包软件开发工具包. 3
提前谢谢。
编辑-最小示例:
\documentclass{memoir}
\usepackage{bookmark,hyperref}
\usepackage[toc]{glossaries}
\makeglossaries
\newacronym{sdk}{SDK}{Software Development Kit}
\begin{document}
Test \acrshort{sdk}
\newpage
Test \acrshort{sdk}.
\newpage
Test \acrshort{sdk}\newpage
Test \newpage
Test \acrshort{sdk}\newpage
Test \newpage
Test \newpage
Test \acrshort{sdk}\newpage
Test \acrshort{sdk}\newpage
\printglossary[type=\acronymtype]
\end{document}
答案1
好的,我明白了。
这索引优先参数并切换到\gls达到了这个效果(我对它进行了定制,以便第一次也能使用简短版本),正如这里提到的:首字母缩略词列表:仅在数字列表和内容表样式点中首次使用
解决方案:
\documentclass{memoir}
\usepackage{bookmark,hyperref}
\usepackage[toc,indexonlyfirst]{glossaries}
\setlength{\glslistdottedwidth}{\textwidth} % adjust to suit
\newglossarystyle{mydottedstyle}{
\glossarystyle{list}%
\renewcommand*{\glossaryentryfield}[5]{%
\item[]\makebox[\glslistdottedwidth][l]{%
\glsentryitem{##1}\glstarget{##1}{\textbf{##2} ##3}%
\unskip\leaders\hbox to 2.9mm{\hss.}\hfill\strut}##5}%
}
\glossarystyle{mydottedstyle}
\renewcommand*{\CustomAcronymFields}{%
name={\the\glsshorttok},% name is abbreviated form
description={\the\glslongtok},% description is long form
first={\noexpand\the\glsshorttok},%
firstplural={\noexpand\the\glsshorttok},%
text={\the\glsshorttok},%
plural={\the\glsshorttok\noexpand\acrpluralsuffix}%
}
\SetCustomStyle
\makeglossaries
\newacronym{sdk}{SDK}{Software Development Kit}
\begin{document}
Test \gls{sdk}
\newpage
Test \gls{sdk}.
\newpage
Test \gls{sdk}\newpage
Test \newpage
Test \gls{sdk}\newpage
Test \newpage
Test \newpage
Test \gls{sdk}\newpage
Test \gls{sdk}\newpage
\printglossary[type=\acronymtype]
\end{document}