
Estou tentando imprimir uma lista de siglas em minha tese usando o pacote acro. De alguma forma, estou recebendo os seguintes erros:
O argumento de \acro_print_list_short:nn possui um } extra. ...ms[incluir-classes=abrev,nome={acrônimos}]
O parágrafo terminou antes de \acro_print_list_short:nn ser concluído. ...ms[include-classes=abbrev,name={Siglas}]#
Faltando { inserido. ...ms[incluir-classes=abrev,nome={acrônimos}]
Faltando } inserido. ...ms[incluir-classes=abrev,nome={acrônimos}]
Aqui está o que estou fazendo:
\documentclass [
a4paper
, titlepage
, twoside
, openright
]{book}
\usepackage[linedheaders, eulerchapternumbers, dottedtoc]{classicthesis}
\usepackage{acro}
\input{glossary}
\begin{document}
\chapter*{Acronyms and Symbols}
\acsetup{extra-style=comma}
\printacronyms[include-classes=abbrev,name={Acronyms}]
\chapter{Introduction}
\end{document}
O arquivo do glossário contém as siglas:
\acsetup{first-style=short}
\DeclareAcronym{AC}{short = AC, long = Alternating Current, class = abbrev}
\DeclareAcronym{Al}{short = Al, long = Aluminum, class = abbrev}
E estou chamando-os no texto com \ac{AC} e \ac{Al}.
Alguém tem alguma ideia de como isso pode ser resolvido?
Responder1
classicthesis redefine o rótulo de descrição e insere um comando bastante frágil baseado em comandos do pacote soul. Isso explode quando o rótulo de descrição é um comando bastante complicado como na lista criada por printacronyms. Você pode evitar que soul seja usado usando a opção pdfspacing ou redefinindo \descriptionlabel
:
\documentclass []{book}
\usepackage[linedheaders, eulerchapternumbers, dottedtoc,pdfspacing]{classicthesis}
\usepackage{acro}
\acsetup{first-style=short}
\acsetup{extra-style=comma}
\DeclareAcronym{AC}{short = AC, long = Alternating Current, class = abbrev}
\DeclareAcronym{Al}{short = Al, long = Aluminum, class = abbrev}
\begin{document}
\chapter*{Acronyms and Symbols}
%\renewcommand{\descriptionlabel}[1]{\hspace*{\labelsep}{#1}}
\printacronyms[include-classes=abbrev,name={Acronyms}]
\ac{AC} and \ac{Al}
\end{document}