Diese Frage ist das Äquivalent zum „Hail Mary Pass“ im American Football! Ich versuche, das acro
Paket für etwas zu verwenden, wofür es nicht konzipiert wurde, also werde ich wahrscheinlich Glück haben – aber wer nicht wagt, der wagt nicht, wie man so schön sagt.
Das acro
Paket ermöglicht es Ihnen, verschiedene Listen mit Akronymen für verschiedene definierte Klassen auszudrucken – ich habe beispielsweise die Klassen „Gene“ und „andere Akronyme“. So weit, so gut. Ich dachte jedoch, ich würde versuchen, das Paket zu verwenden, um eine Liste von Lieferanten (Namen und Adressen) zu erstellen. Daher habe ich eine Klasse „Lieferant“ erstellt, anstelle eines Akronyms einen Kurznamen des Lieferanten verwendet und eine separate Liste für diese Klasse ausgedruckt. Das Problem besteht darin, dass ich die Liste anders formatieren muss, da Lieferantennamen (selbst kurze) tendenziell mehr Zeichen haben als ein durchschnittliches Akronym. Ich kann mithilfe des enumitem
Pakets ein Listenlayout definieren, daher habe ich die Listen „Akronyme“ und „Lieferanten“ definiert. Der \printacronyms
Befehl verwendet jedoch immer das Listenformat „Akronyme“. Was ich wirklich brauche, ist die Erstellung eines Befehls, der im Wesentlichen dem Befehl \printacronyms (z. B. \printsuppliers
) entspricht, der das Listenformat „Lieferanten“ verwendet. Ich habe keine Ahnung, ob dies überhaupt möglich ist, aber ich weiß, dass es in diesem Forum einige kluge Leute gibt! Mir fällt hierzu kein passendes MWE ein, die Frage ist eher allgemeiner als spezifischer Natur.
Antwort1
Sie können acro
jeden gültigen Listentyp verwenden, indem Sie sagen:
\acsetup{list-type=<name of list>}
Hier ist ein Beispiel:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{acro,enumitem}
\newlist{foo}{description}{1}
\newlist{baz}{description}{1}
\setlist[foo]{font=\normalfont\itshape}
\setlist[baz]{font=\normalfont\scshape}
\DeclareAcronym{foo}{
short = foo ,
long = the description of foo ,
class = foo
}
\DeclareAcronym{baz}{
short = baz ,
long = the description of baz ,
class = baz
}
\begin{document}
\ac{foo} \ac{baz}
\acsetup{list-type=foo}
\printacronyms[name=Foo types,include-classes=foo]
\acsetup{list-type=baz}
\printacronyms[name=Baz types,include-classes=baz]
\end{document}