多个 enumitem 全局设置

多个 enumitem 全局设置

(我确信之前应该有人问过这个问题,但我找不到。)

是否可以命名enumitem全局设置,以便可以定义多个全局设置并通过名称引用它们?

\documentclass{article}
\usepackage{libertine}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{enumitem}
\setlist[enumerate]{labelsep=*, leftmargin=1.5pc}

\begin{document}

\begin{enumerate}[align=left,
   leftmargin=0pt,
   labelindent=\parindent,
   listparindent=\parindent,
   labelwidth=0pt,
   itemindent=!,
   label=\alph*)]

\item test
\item test

\end{enumerate}

\begin{enumerate}[labelindent=\parindent]
    \item test
    \item test
\end{enumerate}

\end{document}

答案1

只需为每个常用配置定义一个单独的环境 \newlist

\documentclass{article}
\usepackage{libertine}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{enumitem}
\newlist{enumerate1}{enumerate}{4}% new enumerate-like environment
\setlist[enumerate1]{% settings for enumerate1
    labelsep=*,
    leftmargin=1.5pc,
    label=\arabic*)
}
\newlist{enumerate2}{enumerate}{4}
\setlist[enumerate2]{
    align=left,
    leftmargin=0pt,
    labelindent=\parindent,
    listparindent=\parindent,
    labelwidth=0pt,
    itemindent=!,
    label=\alph*)
}

\begin{document}

  \begin{enumerate1}
    \item test
    \item test
  \end{enumerate1}

  \begin{enumerate2}
    \item test
    \item test
  \end{enumerate2}

\end{document}

当然,除了enumerate1enumerate2,... 您可以 - 并且应该 - 随意称呼它们,这样您就可以选择更具暗示性/信息量的名称。

答案2

您可以使用\SetEnumitemKey来定义样式键:

\documentclass{article}
\usepackage{libertine}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{enumitem}
\setlist[enumerate]{labelsep=*, leftmargin=1.5pc}
\SetEnumitemKey{mystyle}{align=left,
   leftmargin=0pt,
   labelindent=\parindent,
   listparindent=\parindent,
   labelwidth=0pt,
   itemindent=!,
   label=\alph*)}


\begin{document}

\begin{enumerate}
\item test
\item test

\end{enumerate}

\begin{enumerate}[mystyle]
    \item test
    \item test
\end{enumerate}

\end{document}

在此处输入图片描述

相关内容