使用项目标签中的数字范围进行枚举

使用项目标签中的数字范围进行枚举

我正在为课程准备讲课大纲。有些主题需要不止一堂课。我想创建一个enumerate反映这一点的环境。

我希望最终得到类似

  1. Topic 1.
2-3. Topic 2.
  4. Topic 3.
5-6. Topic 4.

我知道我可以手动完成这个,例如,

\documentclass{article}

\begin{document}
\begin{enumerate}
    \item [1.] Topic 1.
    \item [2-3.] Topic 2.
    \item [4.] Topic 3.
    \item [5-6.] Topic 4.
\end{enumerate}
\end{document}

但是,如果我想在列表中间插入另一个主题,则需要手动重新执行所有操作。有没有办法使用一个或多个计数器来执行此操作?

答案1

在此处输入图片描述

\documentclass{article}

\def\itemrange#1{%
\addtocounter{enumi}{1}%
\edef\labelenumi{\theenumi--\noexpand\theenumi}%
\addtocounter{enumi}{-1}%
\addtocounter{enumi}{#1}%
\item
\def\labelenumi{\theenumi}}

\begin{document}
\begin{enumerate}
    \item  Topic 1.
    \itemrange{1} Topic 2.
    \item  Topic 3.
    \itemrange{1} Topic 4.
\end{enumerate}
\end{document}

答案2

免责声明:这是个人观点。大家可以自由发表不同意见。

我会这样做:

\documentclass{article}

\begin{document}
\begin{enumerate}
    \item  Topic 1
    \item  Topic 2
    \begin{enumerate}
        \item First session
        \item Second session
    \end{enumerate}
    \item  Topic 3
    \item  Topic 4
    \begin{enumerate}
        \item First session
        \item Second session
    \end{enumerate}
\end{enumerate}
\end{document}

在此处输入图片描述

相关内容