
acro
Ein Beispiel aus dem Handbuch des Pakets (S. 38, Version 2.10c) übernehmend ,
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[ngerman,english]{babel}
\usepackage[version=2]{acro}
\usepackage{enumitem}
\DeclareAcronym{Rv}{short=Rv,long=Fluss,foreign=\textit{river},foreign-lang=english}
\DeclareAcronym{Drs}{short=Drs,long=Donaudampfschiff,foreign=\textit{Donau river steamer},foreign-lang=english}
\begin{document}
\acuseall
\newlist{acronyms}{description}{1}
\newcommand*\addcolon[1]{#1:}
\setlist[acronyms]{
labelwidth=3em,
leftmargin=3.5em,
noitemsep,
itemindent=0pt,
font=\addcolon}
\DeclareAcroListStyle{mystyle}{list}{list=acronyms}
\acsetup{list-style=mystyle}
\twocolumn
\printacronyms
\end{document}
gibt
Ich möchte die Übersetzung nur des ersten Akronyms in die nächste Zeile verschieben, da ich denke, dass dies sowohl die Lesbarkeit als auch das Erscheinungsbild verbessert. Ist es möglich, \linebreak
benutzerdefinierten Akronymen ein „ voranzustellen? Bitte beachten Sie, dass ich acro
den Kompatibilitätsmodus verwenden muss, daher diese version=2
Option.
Antwort1
Habe eine Lösung gefunden:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[ngerman,english]{babel}
\usepackage[version=2]{acro}
\usepackage{enumitem}
\DeclareAcronym{Rv}{short=Rv,long=Fluss,foreign=\textit{river},foreign-lang=english}
\DeclareAcronym{Drs}{short=Drs,long=Donaudampfschiff,list=Donaudampfschiff\newline,foreign=\textit{Donau river steamer},foreign-lang=english}
\begin{document}
\acuseall
\newlist{acronyms}{description}{1}
\newcommand*\addcolon[1]{#1:}
\setlist[acronyms]{
labelwidth=3em,
leftmargin=3.5em,
noitemsep,
itemindent=0pt,
font=\addcolon}
\DeclareAcroListStyle{mystyle}{list}{list=acronyms}
\acsetup{list-style=mystyle}
\twocolumn
\printacronyms
\end{document}
Antwort2
Falls Sie Version 3 verwenden möchten, können Sie hier eine boolesche Eigenschaft für Akronyme definieren, die Sie in einer Listenvorlage testen und je nach Wert einen Zeilenumbruch einfügen können oder nicht. Eine solche Eigenschaft wird definiert mit
\DeclareAcroProperty?{boolean-property}
und in einer Vorlage eingecheckt mit
\acroifbooleanTF{boolean-property}{true}{false}
Das folgende Beispiel ruft es auf foreign-newline
und zeigt eine Vorlage, die der vordefinierten Vorlage ähnelt description
(ich habe die Felder extra
und pages
weggelassen, aber sie könnten natürlich hinzugefügt werden):
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[english,ngerman]{babel}
\usepackage{acro}
\usepackage{enumitem}
\DeclareAcroProperty?{foreign-newline}
\NewAcroTemplate[list]{custom}{
\acroheading
\acropreamble
\begin{description}[
labelwidth = 3em ,
leftmargin = 3.5em ,
noitemsep ,
itemindent = 0pt]
\acronymsmapF{%
\item[\acrowrite{short}\acroifT{alt}{/}\acrowrite{alt}:]%
\acrowrite{list}%
\acroifT{foreign}{%
\acroifbooleanTF{foreign-newline}{\newline}{ }%
(\textit{\acrowrite{foreign}})
}%
}
{ \item \AcroRerun }%
\end{description}%
}
\acsetup{
list/template = custom
}
\DeclareAcronym{Rv}{
short = Rv ,
long = Fluss ,
foreign = river ,
foreign-babel = english
}
\DeclareAcronym{Drs}{
short = Drs ,
long = Donaudampfschiff ,
foreign = Donau river steamer ,
foreign-babel = english ,
foreign-newline = true
}
\begin{document}
\twocolumn
\acuseall
\printacronyms
\end{document}