嵌套阿拉伯数字枚举,无最后一个点

嵌套阿拉伯数字枚举,无最后一个点

我喜欢将枚举的标签更改为以下结构:

1 First Item 
  1.1 First Sub-Item 
    1.1.1 First Subsub-Item  
    1.1.2 Second Subsub-Item  
  1.2 Second Sub-Item   
2 Second Item   
3 Third Item 

类似问题已经被问过,并且使用以下代码label*=\arabic*.(并且也是官方的一部分enumitem 文档)始终是可接受的答案:

\documentclass{article}
\usepackage{enumitem}
\usepackage{enumitem}
\newlist{legal}{enumerate}{10}
\setlist[legal]{label*=\arabic*.}

\begin{document}
\begin{legal}
  \item First Item 
  \begin{legal}
    \item First Sub-Item 
      \begin{legal}
        \item First Subsub-Item 
        \item Second Subsub-Item 
      \end{legal}
    \item Second Sub-Item 
  \end{legal}
  \item Second Item 
  \item Third Item 
\end{legal}
\end{document}

不幸的是,该解决方案在枚举的最后一级后面放置了一个点.,因此给出了以下结果:

1. First Item   
  1.1. First Sub-Item  
    1.1.1. First Subsub-Item  
    1.1.2. Second Subsub-Item   
  1.2. Second Sub-Item   
2. Second Item   
3. Third Item 

是否可以这样定义标签:不是 [1.1., 1.1.1., 等等] 而是 [1.1, 1.1.1, 等等]?

答案1

实现@moewe 的评论,这是一个只需要两个单独\setlist指令的解决方案。第一个\setlist指令适用于所有列表级别;第二个指令仅影响 1 级项目的数字标签。

在此处输入图片描述

此外,如果您不希望任何项目之间有任何额外的垂直空白,只需在指令\setlist[legal]{nosep}后提供说明即可\newlist

\documentclass{article}
\usepackage{enumitem}
\newlist{legal}{enumerate}{10}
\setlist[legal]{label*=.\arabic*}
\setlist[legal,1]{label=\arabic*}

\begin{document}
\begin{legal}
  \item First Item 
  \begin{legal}
    \item First Sub-Item 
      \begin{legal}
        \item First Subsub-Item 
        \item Second Subsub-Item 
          \begin{legal}
            \item First Subsubsub-Item
            \item Second Subsubsub-Item
          \end{legal}
        \item Third Subsub-Item
      \end{legal}
    \item Second Sub-Item 
  \end{legal}
  \item Second Item 
\end{legal}
\end{document}

相关内容