在我的论文中,我使用了该acronym
包。我对该包只有一个问题,那就是缺乏将首字母大写的功能,据我所知,该功能由\makefirstuc
提供glossaries
。
不过我有所保留,因为我已经写了大部分论文,我想知道转换它是否会太麻烦,或者我是否应该在坚持的同时寻找绕过限制的方法acronym
。
我的问题是:
我制作了自己的首字母缩略词自定义表格,因为我想保留自己的表格样式,而不是依赖 或 中的内置样式
acronym
。glossaries
因此,我需要能够访问提供首次使用首字母缩略词的页码的页码引用标签。它acronym
很简单\pageref{acro:label}
。有类似的东西吗glossaries
?为了能够构建自定义缩写表,我使用了
acronym
包中的带星号的命令,它不会将表中的首字母缩略词标记为“已使用”。这很重要,因为否则第一次使用的所有页面引用都将指向表格本身。这个问题是否存在?glossaries
如果存在,是否可以解决?glossaries
以下命令的直接等效项是什么acronym
:\acs %short form \acl %long form \acf %long form (short form) \acfi %emphasized long form (short form)
以及其加星号的版本(如果有)?
答案1
检索词汇表条目和首字母缩略词的短格式和长格式的命令在用户手册在第13节中。
不过,我建议不要编写自己的表格,而是使用glossaries
“为列表创建自定义样式”的功能。
下面的示例应演示如何定义自定义样式。glossaries
附带了大量示例,因此很容易遵循定义所需的宏。用户手册的第 16 节详细描述了所有内容。
这只是触及了表面glossaries
。人们也可以将它用于完全不同的任务。以防万一它不适合你:Nicola Talbot 最近描述如何编写自己的词汇表/缩写包。
\documentclass{article}
\usepackage{glossaries}
\usepackage{longtable,booktabs}
\newglossarystyle{custom}{%
\renewenvironment{theglossary}%
{%
\begin{longtable}{lll}
\toprule
Acronym & Abbreviation & Reference \\
\midrule
\endhead
\bottomrule
\endfoot
}%
{\end{longtable}}%
\renewcommand*\glossaryheader{}%
\renewcommand*\glsgroupheading[1]{}%
\renewcommand*\glsgroupskip{}%
\renewcommand*{\glossaryentryfield}[5]{%
\glsentryitem{##1}\glstarget{##1}{##2} & \capitalisewords{##3} & p.\,##5\\}%
}
\newacronym{ny}{NY}{New York}
\newacronym{idn}{idn}{identification number}
\makeglossaries
% only for this example (!):
\parindent=0pt
\begin{document}
\printglossary[type=\acronymtype,title=Acronyms,style=custom]
\verb=\gls= \gls{ny} \gls{idn} \\
\verb=\gls= \gls{ny} \gls{idn} \\
\verb=\acrshort= \acrshort{ny} \acrshort{idn} \\
\verb=\Acrshort= \Acrshort{ny} \Acrshort{idn} \\
\verb=\ACRshort= \ACRshort{ny} \ACRshort{idn} \\
\verb=\acrlong= \acrlong{ny} \acrlong{idn} \\
\verb=\Acrlong= \Acrlong{ny} \Acrlong{idn} \\
\verb=\ACRlong= \ACRlong{ny} \ACRlong{idn} \\
\verb=\acrfull= \acrfull{ny} \acrfull{idn} \\
\verb=\Acrfull= \Acrfull{ny} \Acrfull{idn} \\
\verb=\ACRfull= \ACRfull{ny} \ACRfull{idn}
\end{document}