控制枚举嵌套级别

控制枚举嵌套级别

我如何控制嵌套级别enumerate从哪个开始?

我经常希望列表的第一级使用(a)、(b)、(c)......第二级使用 i.、ii.、iii.、...目前,我enumerate使用enumitem包手动设置每个标签。

我不想重新定义计数器enumienumii等,因为有时我希望顶层使用阿拉伯数字。

是否可以告诉 LaTeX 从enumii顶层的计数器开始,然后让它enumiii自动使用下一级的计数器?

我目前正在做的事情:

\documentclass{article}
\usepackage{enumitem}
\begin{document}
\begin{enumerate}[label=(\alph*)]
\item
\begin{enumerate}[label=\roman*.]
\item
\item
\begin{enumerate}[label=(\Alph*)]
\item
\item
\end{enumerate}
\item
\end{enumerate}
\item
\item
\end{enumerate}
\end{document}

答案1

定义一个新列表并根据需要设置标签:

\documentclass{article}

\usepackage{enumitem}

\newlist{mrcenum}{enumerate}{3}
\setlist[mrcenum,1]{label=(\alph*)}
\setlist[mrcenum,2]{label=(\roman*)}
\setlist[mrcenum,3]{label=(\Alph*)}

\begin{document}
\begin{mrcenum}
\item
\begin{mrcenum}
\item
\item
\begin{mrcenum}
\item
\item
\end{mrcenum}
\item
\end{mrcenum}
\item
\item
\end{mrcenum}
\end{document}

在此处输入图片描述

您还可以

\setlist[enumerate,1]{\label=(\alph*)}

等等,然后使用enumerate

答案2

\@enumdepth您可以通过设置保存当前枚举深度的计数器来实现这一点,请尝试以下示例:

\documentclass{article}

\begin{document}

\makeatletter\@enumdepth1\makeatother

\begin{enumerate}
\item
    \begin{enumerate}
    \item
    \item
    \item
        \begin{enumerate}
        \item
        \item
        \item
        \end{enumerate}
    \end{enumerate}
\item
\item
\end{enumerate}
\end{document}

但请记住,默认情况下 LaTeX 仅支持深度 4,这样您将自动丢失 1 个级别。因此,您可能需要使用enumitem包设置一个新列表。

相关内容