使用变量作为枚举中的可选输入

使用变量作为枚举中的可选输入

谁能告诉我如何解决以下问题:

以下代码会产生错误

包 enumitem 错误:topsep=0em,partopsep=0em 未定义

\documentclass[11pt]{amsart}
\usepackage{enumitem}
\def \ListSimpleArguments {topsep=0em,partopsep=0em}
\begin{document}
\begin{enumerate}[\ListSimpleArguments]
    \item aaa
\end{enumerate}
\end{document}  

但是当我不使用变量 \ListSimpleArguments 时它就可以工作了:

\documentclass[11pt]{amsart}
\usepackage{enumitem}
\def \ListSimpleArguments {topsep=0em,partopsep=0em}
\begin{document}
\begin{enumerate}[topsep=0em,partopsep=0em]
    \item aaa
\end{enumerate}
\end{document}  

我该如何解决这个问题?如何在变量中定义这些可选参数?

答案1

key=value 语法的解析器会处理不是扩展宏。最好使用包中的工具来设置默认值:

\documentclass[11pt]{amsart}
\usepackage{enumitem}
\setlist[enumerate]{topsep=0em,partopsep=0em}
\begin{document}
\begin{enumerate}
    \item aaa
\end{enumerate}
\end{document}  

相关内容