我正在使用glossaries
来处理我的首字母缩略词。但是,有些我最初想用作首字母缩略词,但后来我才开始只以它们的展开形式使用,即在文本中我总是使用 来称呼这些首字母缩略词\acl{}
。
尽管这些缩写词已在我的代码中定义,但我希望它们不包含在缩写词列表中。是否有glossaries
允许这样做的选项?
显然,我可以用扩展形式替换文本中上述首字母缩略词的所有实例\acl{}
,但我想避免这样做。
答案1
您可以定义“忽略”词汇表。 会跳过这些类型的词汇表\printglossaries
。例如:
\documentclass{article}
\usepackage[acronym,nomain,shortcuts]{glossaries}
\newignoredglossary{ignore}
\makeglossaries
\newacronym{html}{HTML}{hypertext markup language}
\newacronym[type=ignore]{xml}{XML}{extensible markup language}
\begin{document}
\acl{html} and \acl{xml}.
\printglossaries
\end{document}
或者,您可以在定义条目之后将该条目移动到忽略的词汇表中:
\documentclass{article}
\usepackage[acronym,nomain,shortcuts]{glossaries}
\newignoredglossary{ignore}
\makeglossaries
\newacronym{html}{HTML}{hypertext markup language}
\newacronym{xml}{XML}{extensible markup language}
\glsmoveentry{xml}{ignore}
\begin{document}
\acl{html} and \acl{xml}.
\printglossaries
\end{document}
这会产生相同的结果。
答案2
您可以重新定义\acl
命令以仅打印定义而不索引首字母缩略词
\documentclass{article}
\usepackage[acronym,nomain]{glossaries}
\makeglossaries
\renewcommand{\acl}[1]{\glsentrytext{#1}}
\newacronym{html}{HTML}{hypertext markup language}
\newacronym{css}{CSS}{cascading style sheets}
\newacronym{xml}{XML}{extensible markup language}
\newacronym{sql}{SQL}{structured query language}
\newacronym{rdbms}{RDBMS}{relational database management system}
\newacronym{rdsms}{RDSMS}{relational data stream management system}
\begin{document}
These entries are only used once: \acl{sql}, \cgls{rdbms},
\cgls{xml}. These entries are used multiple times:
\acl{html}, \acl{html}, \cgls{css}, \cgls{css}, \cgls{css},
\cgls{rdsms}, \cgls{rdsms}.
\printglossaries
\end{document}
旁注:为了方便我们给您答复,请提供平均能量损失下次。