我正在尝试使用 acro 包打印论文中的首字母缩略词列表。但我不知何故收到以下错误:
\acro_print_list_short:nn 的参数有一个额外的}。...ms[include-classes=abbrev,name={Acronyms}]
段落在 \acro_print_list_short:nn 完成之前结束。...ms[include-classes=abbrev,name={Acronyms}]#
缺少插入的 {。...ms[include-classes=abbrev,name={Acronyms}]
缺少}插入。...ms[include-classes=abbrev,name={Acronyms}]
这是我正在做的事情:
\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}
词汇表文件包含以下缩略词:
\acsetup{first-style=short}
\DeclareAcronym{AC}{short = AC, long = Alternating Current, class = abbrev}
\DeclareAcronym{Al}{short = Al, long = Aluminum, class = abbrev}
我在文中使用 \ac{AC} 和 \ac{Al} 来调用它们。
有人知道如何解决这个问题吗?
答案1
classicthesis 重新定义了描述标签,并根据来自包 soul 的命令插入了一个相当脆弱的命令。当描述标签是一个相当复杂的命令时,这种情况就会爆发,就像 printacronyms 创建的列表中一样。您可以通过使用选项 pdfspacing 或重新定义来避免使用 soul \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}