Wie zählt man die Gesamtzahl der Akronyme (\usepackage{acro} & \usepackage{xassoccnt})?

Wie zählt man die Gesamtzahl der Akronyme (\usepackage{acro} & \usepackage{xassoccnt})?

Wie zählt man die Gesamtzahl der Akronyme (\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}

Das Ergebnis, das ich bekomme:

Bildbeschreibung hier eingeben

Richtiges Ergebnis:

Es gibt3Akronyme in diesem Dokument

Antwort1

Das Patchen \DeclareAcronymwird in Ihrem Beispiel den gewünschten Effekt haben, ich gehe jedoch davon aus, dass das Ziel darin besteht, die verwendeten Akronyme zu verfolgen.

Sie können alle Akronyme mit durchlaufen und die / -Befehle \AcroAcronymsMapverwenden, um entsprechend zu filtern, z. B.\acroifused<TF>\acroifsingle<TF>

\AcroAcronymsMap{
  \acroifusedT{#1}{
    \stepcounter{totacro}
  }
}

Dies wird auf den verwendeten Status an dieser Stelle im Dokument angewendet. Wenn Sie die Option verwenden, singlemöchten Sie dies wahrscheinlich \acroifsingleFauch mit einem Gate versehen.

Sie können dies weiter verfeinern, um andere Akronym-Eigenschaften zu filtern oder anderweitig zu verwenden, und zwar mithilfe der in der Paketdokumentation unter „25.3. In Vorlagendefinitionen zu verwendende Befehle“ dokumentierten Makros.

\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}

verwandte Informationen