答案1
此功能可直接在缩略词包中使用,我认为您的问题和 David Carlisle 的回答发布时并非如此。由于您使用 \newacro(而不是 \acro 和 \acrodef;请参阅链接的 PDF 以了解差异),因此 David 的示例可以更改为
\documentclass{article}
\usepackage{acronym}
\newacro{RMS}[RMS]{Resource Management System}
\newacroindefinite{RMS}{an}{a}
\begin{document}
zzzz \iac{RMS} zzzz \iac{RMS}
\end{document}
这会为您提供与 David 的代码相同的输出,现在您可以简单地使用 \iac 和 \Iac 来表示小写和大写不定冠词。请注意 - 据我所知 - 该软件包不附带任何用于强制格式(如 \acf、\acl、\acs)的特殊命令。
更新:请注意,使用带有 hyperref 的 acronym 包将使不定冠词和首字母缩略词在使用 \iac 时超引用首字母缩略词表。此外,在使用 hyperref 时,对同一个首字母缩略词多次使用 \Iac 似乎存在一个错误,会导致编译器错误。您可以使用此修复摆脱这些问题。
答案2
您可以使用用于测试首次使用的测试\ac
,但使其制作其他文本,an
以及a
这里:(请在将来提供一个工作示例,它将使回答变得更加容易)。
\documentclass{article}
\usepackage{acronym}
\newacro{RMS}[RMS]{Resource Management System}
\makeatletter
\def\acrousedTF#1{%
\expandafter\ifx\csname ac@#1\endcsname\AC@used%
\expandafter\@firstoftwo
\else
\expandafter\@secondoftwo
\fi}
\makeatother
\begin{document}
zzzz \acrousedTF{RMS}{an}{a} \ac{RMS} zzzz \acrousedTF{RMS}{an}{a} \ac{RMS}
\end{document}