Como contar o número total de siglas (\usepackage{acro} & \usepackage{xassoccnt})?
MWE:
\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}
O resultado que obtenho:
Resultado correto:
Há3siglas neste documento
Responder1
O patch \DeclareAcronym
terá o efeito desejado no seu exemplo, mas presumo que o objetivo seja rastrear os acrônimos usados.
Você pode iterar todos os acrônimos \AcroAcronymsMap
e usar os comandos \acroifused<TF>
/ \acroifsingle<TF>
para filtrar conforme apropriado, por exemplo
\AcroAcronymsMap{
\acroifusedT{#1}{
\stepcounter{totacro}
}
}
que operará no estado usado naquele ponto do documento. Se você estiver usando a single
opção, provavelmente desejará usá-la \acroifsingleF
também.
Você pode refinar ainda mais isso para filtrar ou usar outras propriedades de acrônimos por meio das macros documentadas em "25.3. Comandos a serem usados em definições de modelo" na documentação do pacote.
\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}