如何計算首字母縮寫的總數(\usepackage{acro} 和 \usepackage{xassoccnt})?
微量元素:
\documentclass{article}
\usepackage{xassoccnt}
\setlength{\parindent}{0cm}
\usepackage{acro}
\acsetup{
% first-style=long-short,
first-style=footnote,
list/display=used,
format/short=\bf
}
%
\DeclareAcronym{usa}{
short=USA,
long=United States of America,
}
\DeclareAcronym{eu}{
short=EU,
long=European Union,
}
\DeclareAcronym{ussr}{
short=USSR,
long=Union of Soviet Socialist Republics,
}
%
\NewTotalDocumentCounter{totacro}
\preto\ac{%
\stepcounter{totacro}
}
%
\begin{document}
There are \TotalValue{totacro} acronyms in this document
\hrulefill
\ac{usa}, \ac{usa}
\ac{eu}, \ac{eu}
\ac{ussr}, \ac{ussr}
\hrulefill
\printacronyms[heading=none, sort]
\end{document}
我得到的結果:
正確結果:
有3本文檔中的縮寫詞
答案1
修補\DeclareAcronym
將在您的範例中達到預期的效果,但我認為目的是追蹤使用的首字母縮寫。
您可以迭代所有首字母縮略詞\AcroAcronymsMap
並使用\acroifused<TF>
/\acroifsingle<TF>
命令進行適當的過濾,例如
\AcroAcronymsMap{
\acroifusedT{#1}{
\stepcounter{totacro}
}
}
它將對文件中該點的已使用狀態進行操作。如果您正在使用該選項,您可能也single
想對其進行門控。\acroifsingleF
您可以透過套件文件中「25.3. 在範本定義中使用的命令」中記錄的巨集進一步細化它以過濾或以其他方式使用其他首字母縮寫屬性。
\documentclass{article}
\usepackage{xassoccnt}
\NewTotalDocumentCounter{totacro}
\usepackage{acro}
\acsetup{
first-style=footnote,
list/display=used,
format/short=\bfseries,
}
\DeclareAcronym{usa}{
short=USA,
long=United States of America,
}
\DeclareAcronym{eu}{
short=EU,
long=European Union,
}
\DeclareAcronym{ussr}{
short=USSR,
long=Union of Soviet Socialist Republics,
}
\begin{document}
There are \TotalValue{totacro} acronyms in this document
\hrulefill
\ac{usa}, \ac{usa}
\ac{eu}, \ac{eu}
\ac{ussr}, \ac{ussr}
\hrulefill
\printacronyms[heading=none, sort]
\AcroAcronymsMap{
\acroifusedT{#1}{
\stepcounter{totacro}
}
}
\end{document}