
我正在嘗試使用 acro 套件列印論文中的首字母縮寫列表。但我不知何故收到以下錯誤:
\acro_print_list_short:nn 的參數有一個額外的 }。 ...ms[include-classes=abbrev,name={縮寫}]
段落在 \acro_print_list_short:nn 完成之前結束。 ...ms[include-classes=abbrev,name={Acronyms}]#
缺少 { 已插入。 ...ms[include-classes=abbrev,name={縮寫}]
缺少 } 插入。 ...ms[include-classes=abbrev,name={縮寫}]
這是我正在做的事情:
\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 中的命令插入了一個相當脆弱的命令。當描述標籤是一個相當複雜的命令(如 printacronym 創建的列表中)時,這種情況就會爆炸。您可以透過使用選項 pdfspacing 或重新定義來避免使用靈魂\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}