如何创建项目编号格式为 (i,j) 的枚举环境?

如何创建项目编号格式为 (i,j) 的枚举环境?
\begin{enumerate}[(i)] 
 \item
\end{enumerate}

这样可以为项目添加罗马数字编号。但我想以 (i,j) 格式进行编号,即我希望项目编号为 (1,2)、(1,1)、(5,4) 等。该怎么办?

答案1

以下 MWE 实现了(i)第一级项目的编号/标签系统和(i,j)第二级项目的编号/标签系统。这里,ij是阿拉伯数字。

\documentclass{article}
\renewcommand{\theenumi}{(\arabic{enumi})}
\renewcommand{\theenumii}{(\arabic{enumi},\arabic{enumii})}
\renewcommand{\labelenumi}{\theenumi}
\renewcommand{\labelenumii}{\theenumii}
\makeatletter
\renewcommand{\p@enumii}{}
\makeatother
\begin{document}
\begin{enumerate}
\item First level-one item 
  \begin{enumerate}
  \item First level-two item 
  \item Second level-two item
  \end{enumerate}
\item Second level-one item 
  \begin{enumerate}
  \item Still another level-two item 
  \end{enumerate}
\end{enumerate}
\end{document}

在此处输入图片描述

评论:

  • 如果不想调整第一级项目的标签样式,只需注释掉(或删除)重置\theenumi和的指令即可\labelenumi
  • 该指令用于使用通常的and方法\renewcommand{\p@enumii}{}交叉引用 2 级项目。由于它包含一个“特殊”字符(符号),因此必须将该指令“包装”在一对and指令中。\label\ref@\makeatletter\makeatother

答案2

我总是喜欢使用enumitem包中用于任何与列表相关的内容;在这种情况下,这也许有点小题大做,但这里有一种方法可以做到。

\setlist[enumerate,1]{label=(\arabic*)}
\setlist[enumerate,2]{label=(\arabic{enumi}{,}\arabic*)}

代表1‘第一级’, 代表2‘第二级’。

截屏

平均能量损失

\documentclass{article}
\usepackage{enumitem}
\setlist[enumerate,1]{label=(\arabic*)}
\setlist[enumerate,2]{label=(\arabic{enumi}{,}\arabic*)}

\begin{document}
\begin{enumerate}
\item First level-one item 
  \begin{enumerate}
  \item First level-two item 
  \item Second level-two item
  \end{enumerate}
\item Second level-one item 
  \begin{enumerate}
  \item Still another level-two item 
  \end{enumerate}
\end{enumerate}
\end{document}

相关内容