如何在LaTeX2e中任意编号子部分

时间:2015-10-28 15:40:38

标签: latex

我正在审查一本教科书,该教科书分为章节和章节。我的评论使用了文章文档类,我将章节与章节相关联,并将特定练习与子章节相关联。练习按每个章节的数字顺序编号,因此缩写目录如下所示:

Chapter 1 Introduction to Statistics
  Section 1.1 What is statistics
    Ex 1.1 Exercise one
    Ex 1.2 Exercise two
  Section 2 Descriptive Statistics
    Ex 1.3 Exercise three
    Ex 1.4 Exercise four
  Section 3 Inferential statistics
    Ex 1.5 Exercise five
    Ex 1.6 Exercise six

我正在选择练习,以便说明我在评论中提出的要点。假设我正在练习练习1.4,1.6,2.20,2.31,3.15,3.25和3.42:

我希望将章节编号和目录看起来像这样。
1. Introduction
  1.4 Exercise four
  1.6 Exercise six
2. Sampling
  2.20 Exercise twenty
  2.31 Exercise thirty-one
3. Probability
  3.15 Exercise fifteen
  3.25 Exercise twenty-five
  3.42 Exercise forty-two
ETC

使用开箱即用的LaTeX,我得到了令人困惑的连续编号(如第3章所述):

3. Probability
  3.1 Exercise fifteen
  3.2 Exercise twenty-five
  3.3 Exercise forty-two

使用已加星标的\ subsection *版本可完全消除子编号。我在任意编号问题中找到的答案都很冗长而且不尽如人意,因为我必须做很多标记来产生我想要的效果。我真的很喜欢这样做的一个包(可能名为\ usepackage {arbitraryNumberedSubsections})。

问题:是否有一种算法可以在LaTeX中分配任意子段号?这种算法在TeX或LaTeX中是否实用且可实现?这个问题不是关于调试,不可重现的问题,家庭作业,第三方工具或图书馆,一般计算问题或专业管理问题。

谢谢,CC。

1 个答案:

答案 0 :(得分:2)

我不知道这样做的包(但可能有一个)。

您可以手动设置(子)部分编号,如

\setcounter{subsection}{3} % one less than what you want
\subsection{Foo}
% --> 4. Foo

您也可以定义一个新命令来包装它并使用它。完整的工作示例:

\documentclass{article}

\newcommand{\nsubsection}[2]{
    \setcounter{subsection}{#1}
    \addtocounter{subsection}{-1}
    \subsection{#2}
}

\begin{document}

\tableofcontents

\section{Introduction}
  \nsubsection{4}{Exercise four}
  \nsubsection{6}{Exercise six}
\section{Sampling}
  \nsubsection{20}{Exercise twenty}
  \nsubsection{31}{Exercise thirty-one}
\section{Probability}
  \nsubsection{15}{Exercise fifteen}
  \nsubsection{25}{Exercise twenty-five}
  \nsubsection{42}{Exercise forty-two}

\end{document}