使用 `\fbox{enumi}` 嵌套枚举停止递增

使用 `\fbox{enumi}` 嵌套枚举停止递增

我想在 的物品标签周围加上方框enumerate。我创建了一个新命令:

\newcommand{\sqenumi}{\protect\fbox{\arabic{enumi}}}

这样,我就能得到我想要的东西了\begin{enumerate}[label=\sqenumi]

但是,当将\sqenumi嵌套enumerate在另一个 中(有或没有\sqenumi)时,标签不再增加。MWE:

\documentclass{article}
\usepackage[french]{babel}
\usepackage{enumitem}

\newcommand{\sqenumi}{\protect\fbox{\arabic{enumi}}}

\begin{document}
\begin{enumerate}[label=\sqenumi]
    \item Item 1
    \item Item 2
    \item Item 3
        \begin{enumerate}[label=\sqenumi]
            \item Sub item 1
            \item Sub item 2
            \item Sub item 3
        \end{enumerate}
    \item Item 4
\end{enumerate}
\end{document}

得出以下结果: 嵌套枚举,标签周围有框,不会增加标签

答案1

enumi是顶级枚举的计数器。对于嵌套枚举,您必须使用等enumiienumiii

但是你可以使用特殊的 enumitem 语法\arabic*,它将自动被当前嵌套级别替换

\documentclass{article}
\usepackage[french]{babel}
\usepackage{enumitem}

\newcommand{\sqenumi}{\protect\fbox{\arabic*}}

\begin{document}
\begin{enumerate}[label=\sqenumi]
    \item Item 1
    \item Item 2
    \item Item 3
        \begin{enumerate}[label=\sqenumi]
            \item Sub item 1
            \item Sub item 2
            \item Sub item 3
        \end{enumerate}
    \item Item 4
\end{enumerate}
\end{document}

在此处输入图片描述

相关内容