
Adoptando un ejemplo del acro
manual del paquete (p. 38, versión 2.10c),
\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}
da
Me gustaría mover la traducción sólo del primer acrónimo a la siguiente línea, ya que creo que esto aumentará tanto la legibilidad como la apariencia visual. ¿Es posible anteponer un \linebreak
acrónimo seleccionado por el usuario? Tenga en cuenta que debo usarlo acro
en modo de compatibilidad, de ahí la version=2
opción.
Respuesta1
Encontré una solución:
\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}
Respuesta2
En caso de que desee utilizar la versión 3, así es como puede definir una propiedad booleana para acrónimos que puede probar en una plantilla de lista y, dependiendo de su valor, insertar un salto de línea o no. Tal propiedad se define con
\DeclareAcroProperty?{boolean-property}
y registrado en una plantilla con
\acroifbooleanTF{boolean-property}{true}{false}
El siguiente ejemplo lo llama foreign-newline
y muestra una plantilla similar a la description
plantilla predefinida (dejé los campos extra
y pages
fuera, pero se podrían agregar, por supuesto):
\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}