如何更改目录和标题的编号?

如何更改目录和标题的编号?

我正在为我们研究所的博士论文准备一个模板。该论文包括已发表的论文章节和常规书籍章节。我正在基于 book.cls 进行构建。我还使用 fancyhdr 为论文章节和常规书籍章节设置了不同的页面样式。现在我想更改目录中章节和部分的编号以及标题,如下所示:

1 Introduction
  1.1 Motivation
      1.1.1 First Motivation
      1.1.2 First Motivation
  1.2 Objectives
  ...
P2 FirstPaper
  P2-1 Introduction
  P2-2 Methods
       P2-2.1 Approach
       P2-2.2 Validation
  ...
3 RegularChapter
  3.1 Introduction
  3.2 Methods
       3.2.1 Approach
       3.2.2 Validation
  ...

我猜应该有某种方法可以在 \fancypagestyle 命令期间重新定义 \thechaper \thesection \thesubsection 命令。我还尝试查看 titlesec 包,但无法识别用于编号的命令(如果有)。大多数内容都涉及标题格式。

希望我已经很好地描述了这个问题。有人能帮助我吗?谢谢!

答案1

编辑:我添加了一个更通用的方法,将相关命令外包给序言。我忽略了这不是你正在写的一次性文档,而是一篇论文模板。抱歉。改进的方法应该更符合你的问题的精神:即使文档中的章节移动很多,也不太可能导致错误;对于最终用户来说,它也应该更顺畅,他们不必在文档中间重新定义内部结构,例如\thechapter

(编辑已经被接受的答案并不理想。但我希望你会发现添加的内容不会损害原始解决方案。)


欢迎来到 TeX.SX!

解决方案 1:您可以\thechapter在需要特殊格式的章节之前重新定义,之后恢复为默认格式。此解决方案不需要额外的软件包。

\documentclass{book}

\begin{document}

\tableofcontents

\chapter{First chapter}
\section{Regular section}

\let\oldthechapter\thechapter
\renewcommand*{\thechapter}{P\oldthechapter}

\chapter{Paper – chapter}
\section{Paper – section}
\subsection{Paper – subsection}

\let\thechapter\oldthechapter

\chapter{Third chapter}
\section{Regular section}

\end{document}

解决方案 2\paperchapter:通过围绕标准构建一种新章节()可以实现相同的效果\chapter。每当用户\paperchapter在主文档中调用时,都会通过添加“P”重新定义编号格式;每当\chapter调用常规时,都会恢复默认格式。

章节的连续编号得以保留;带星号的版本和可选参数(\paperchapter[Short Title]{Long Title})仍然可用。

\documentclass{book}

\let\oldthechapter\thechapter
\let\oldchapter\chapter

\newcommand*{\paperchapter}{\renewcommand*{\thechapter}{P\oldthechapter}\oldchapter}
\renewcommand*{\chapter}{\renewcommand*{\thechapter}{\oldthechapter}\oldchapter}


\begin{document}

\tableofcontents

\chapter{First chapter}
\section{Regular section}

\paperchapter{Paper – chapter}
\section{Paper – section}
\subsection{Paper – subsection}

\chapter{Third chapter}
\section{Regular section}

\end{document}

具有特殊格式的目录

专章标题

相关内容