我想使用 enumitem 包在各部分之间的子列表(第二顺序,操作)中保留编号。使用第一顺序列表(目标)我做到了,但在子列表方面我遇到了麻烦。
我试过了resume
,但它在维护枚举中不起作用。在目标 3必须是行动 5(下次不执行操作 1)依此类推。
看看我的 MWE:
\documentclass[a4paper,10pt]{article}
\usepackage[]{enumitem}
\begin{document}
\section{First}
\begin{enumerate}[label=\textbf{Objective\ \theenumi\ }]
\item Lorem
\begin{enumerate}[label=\textbf{Action\ \arabic*}]
\item ipsum
\item dolorem
\end{enumerate}
\item Ipsum
\begin{enumerate}[label=\textbf{Action\ \arabic*},resume]
\item ipsum
\item dolorem
\end{enumerate}
\end{enumerate}
\section{Second}
\begin{enumerate}[label=\textbf{Objective\ \theenumi\ },resume]
\item Lorem
\begin{enumerate}[label=\textbf{Action\ \arabic*},resume]
\item ipsum
\item dolorem
\end{enumerate}
\item Ipsum
\begin{enumerate}[label=\textbf{Action\ \arabic*}]
\item ipsum
\item dolorem
\end{enumerate}
\end{enumerate}
\end{document}
正确的做法是什么?
提前致谢
答案1
您已经接近了,您可以用 声明子列表series=<series name>
,然后在后面的子列表中用 引用它resume=<series name>
。我用自定义环境包装了内部子列表,这样重复性就更少了。
\documentclass[a4paper,10pt]{article}
\usepackage[]{enumitem}
\newlist{innerenumerate}{enumerate}{1}
\setlist*[innerenumerate]{label=\textbf{Action\ \arabic*}, resume=inner}
\begin{document}
\section{First}
\begin{enumerate}[label=\textbf{Objective\ \theenumi\ }]
\item Lorem
\begin{innerenumerate}[series=inner]
\item ipsum
\item dolorem
\end{innerenumerate}
\item Ipsum
\begin{innerenumerate}
\item ipsum
\item dolorem
\end{innerenumerate}
\end{enumerate}
\section{Second}
\begin{enumerate}[label=\textbf{Objective\ \theenumi\ },resume]
\item Lorem
\begin{innerenumerate}
\item ipsum
\item dolorem
\end{innerenumerate}
\item Ipsum
\begin{innerenumerate}
\item ipsum
\item dolorem
\end{innerenumerate}
\end{enumerate}
\end{document}