是否可以调整 acronym.sty 以接受与传递给下面的长表示例相同的宽度格式?
换句话说
%\begin{acronym}[USA]
%\acro{USA}{United States of America}
%\end{acronym}
到
%\begin{acronym}{@{}p{50pt} p{250pt}} % <-- direct example
%\acro{USA}{United States of America}
%\end{acronym}
目的是使首字母缩略词列表的外观与我用于命名的长表相同(见下面的示例)。我想保留首字母缩略词包的功能。
\begin{longtable}[l]{@{}p{50pt} p{250pt}}
\textsc{Acronym} & \textsc{Description}\\
\textsc{USA} & {United States of America}
\end{longtable}
如何更改首字母缩略词的格式?已经很接近了,但我还不具备必要的知识来将 .sty 修改为类似于上面给出的示例。我知道行距和列宽可能会使事情变得相当复杂。也许重新定义 acronym.sty 以使用 longtable 会更简单?
我正在使用 classicthesis.styhttps://www.ctan.org/pkg/classicthesis未做任何修改;即,我正在调整 ClassicThesis.tex。
非常感谢您的建议!
答案1
花了一段时间看了 Gonzalo Medina 的回答acronym
对于您链接的问题,我认为至少要使该包适合在 longtable 中使用会非常困难。
相反,我将提供一个令人讨厌的答案,告诉你如何在不同的包中做你想做的事情。在这种情况下,acro
与之没有太大差别的包acronym
(使用首字母缩略词的宏是相同的,定义方式略有不同,但通常功能更强大)。
优势acro
提供的功能是,您可以定义首字母缩略词列表的打印样式
\DeclareAcroListStyle{ThomasStyle}{table}{
table = longtable,
table-spec = | @{} p{50pt} | p{250pt} |
}
第一个参数为列表提供一个名称,第二个参数指定一般类型(即list
或table
),然后跟着一个键值列表,键table
设置使用哪个表式环境并table-spec
设置列类型
然后,我们可以设置要以此样式打印的首字母缩略词列表\acsetup{list-style=ThomasStyle}
longtable
这将在具有给定列规范的环境中打印整个列表。
\documentclass{article}
\usepackage{acro}
\usepackage{longtable}
\DeclareAcroListStyle{ThomasStyle}{table}{
table = longtable,
table-spec = | @{}p{50pt} | p{250pt} |
}
\acsetup{list-style=ThomasStyle}
\DeclareAcronym{pdf}{
short = pdf,
long = portable document format
}
\begin{document}
This is a \ac{pdf}
\printacronyms
\end{document}
至于通常从acronym
到 的切换,在最简单的情况下用acro
替换 就足够了,宏在两个包中的工作方式相同。\acro{shortname}{longname}
\DeclareAcronym{key}{short=shortname,long=longname}
\ac{key}