一般来说,参考文献、索引等章节的标题在论文中是不编号的。但是,在一些特殊情况下,我们可能也需要为这些标题做章节编号。
这边文章介绍如何处理此类情况。
对参考文献来说,不论采取何种方式,大体上最终都是用 LaTeX 提供的 thebibliography
环境来排版参考文献列表。这个环境一方面打印参考文献标题,另一方面打印参考文献列表。而打印参考文献标题的方式,就是调用 \section*
(在 article
文档类中)或 \chapter*
(在 book
类中)。
因此,我们需要做的事情,就是重定义 thebibliography
环境,使其调用 \section
或 \chapter
,而不是带星号的版本。
在 LaTeX2e 当中,定义名为 foo
的环境,实际上定义了两个命令:\foo
和 \endfoo
。前者用于开始环境,而后者用于结束环境。显而易见,thebibliography
环境对应的两个命令是 \thebibliography
和 \endthebibliography
;而 \section*
或 \chapter*
的调用位于 \thebibliography
当中。因此,我们只需要使用 xpatch
/etoolbox
宏包提供的 \xpatchcmd
/\patchcmd
对 \thebibliography
打上补丁即可。
以下是在 article
文档类中的最简示例。
1 | \documentclass{article} |
生成带编号的索引标题可以采用类似的方案操作,此处不表。