我正在使用enumerate
环境,并且我想让我的列表从 1.1. 开始而不是 1.,从 2.1. 开始而不是 2。我怎样才能隐藏第一级?
答案1
您可以使用可选参数在本地添加编号\item[..]
,也可以使用全局更改enumitem
的label=<key>
。
\documentclass{article}
\usepackage{enumitem}
\begin{document}
\begin{enumerate}[label={\arabic*.1.}]
\item First
\item Second
\item Third
% Done with the 1. suffix; revert back to regular enumerate labelling
\renewcommand{\labelenumi}{\arabic{enumi}.}
\item Last
\end{enumerate}
\begin{enumerate}
\item[1.1.] First
\stepcounter{enumi}
\item Second
\item[2.2.] Third
\item Last
\end{enumerate}
\end{document}
\item
- 级别的变化也是可能的,就像上面的第一个例子一样,标签机制可以在中途改变enumerate
以删除(比如说)1.
后缀。
请注意,使用可选参数\item
不会影响级别计数器enumi
。
答案2
这使用混合操作枚举深度计数器并相应地enumitem
设置higher
级别计数器enumi
。
\documentclass{article}
\usepackage{etoolbox}
\usepackage{enumitem}
\begin{document}
\makeatletter
\AtEndEnvironment{enumerate}{%
\global\@enumdepth 0
}
\newcommand{\incenumdepth}[1][1]{%
\advance \@enumdepth \@ne%
\setcounter{enum\@roman{\@enumdepth}}{#1}%
}
\makeatother
\incenumdepth[1]
\begin{enumerate}[label*={\arabic*.}]
\item One
\item Two
\item Three
\item Four
\item Five
\end{enumerate}
\incenumdepth[3]
\begin{enumerate}[label*={\arabic*.}]
\item One \makeatletter \the\@enumdepth\makeatother
\item Two
\item Three
\item Four
\item Five
\end{enumerate}
\end{document}