使用 enumitem 自动实现括号子项行为

使用 enumitem 自动实现括号子项行为

我想通过 enumitem 获得以下项目/子项目行为:

\documentclass{article}
\begin{document}
\begin{enumerate}
   \item [(1)] first item;
   \item [(2)] second item;
   \begin{enumerate}
      \item [(2.1)] first subitem of the second item;
      \item [(2.2)] second subitem of the second item;
       \begin{enumerate}
          \item [(2.2.1)] first subitem of the second subitem of the second item;
       \end{enumerate}
   \end{enumerate}
      \item [(3)] third item.
\end{enumerate}
\end{document}

在此处输入图片描述

我知道如何在不使用括号的情况下在本地获得此 xyz 标签行为([label*=\arabic*.]在每个枚举环境中指定为选项)。但是,我不知道如何在括号之间包含最终标签,即 (x,y,z)。如何使用 enumitem 包实现这一点?

此外,如果能够在最外层的枚举环境中定义整个行为就更好了(默认情况下,假设每个嵌套枚举中都有相应的配置)。这可能吗?

答案1

如果要在整个文档中使用多个这样的环境,您可能需要考虑定义自己的类似环境。 您可以使用包中的和来enumerate实现这一点:\newlist\setlistenumitem

在此处输入图片描述

\documentclass{article}

\usepackage{enumitem}
\newlist{myenum}{enumerate}{3}
\setlist[myenum,1]{label*=(\arabic*)}
\setlist[myenum,2]{label=(\arabic{myenumi}.\arabic*)}
\setlist[myenum,3]{label=(\arabic{myenumi}.\arabic{myenumii}.\arabic*)}

\begin{document}
\begin{myenum}
   \item first item;
   \item second item;
   \begin{myenum}
      \item  first subitem of the second item;
      \item second subitem of the second item;
       \begin{myenum}
          \item  first subitem of the second subitem of the second item;
       \end{myenum}
   \end{myenum}
      \item  third item.
\end{myenum}
\end{document}

答案2

\documentclass{article}
\usepackage{enumitem}
\begin{document}
\begin{enumerate}[label=(\arabic*)]
   \item  first item;
   \item  second item;
   \begin{enumerate}[label=(\arabic{enumi}.\arabic*)]
      \item  first subitem of the second item;
      \item  second subitem of the second item;
       \begin{enumerate}[label=(\arabic{enumi}.\arabic{enumii}.\arabic*)]
          \item  first subitem of the second subitem of the second item;
       \end{enumerate}
   \end{enumerate}
      \item  third item.
\end{enumerate}
\end{document}

在此处输入图片描述

相关内容