摘要
本课讲解如何为一本书或一篇学位论文编制主题索引及其术语表。课程说明主题索引的用途以及它与目录的区别;介绍 imakeidx 宏包及其命令 \makeindex、\index 和 \printindex,以及 makeindex 在引擎两遍编译之间为索引项排序的编译流程;讲解子项、使汉字按拼音排列的排序键、中文写作“见”和“参见”的交叉引用、页码范围和突出显示的页码;说明如何同时维护多个索引,一个人名索引和一个主题索引;介绍 glossaries 宏包及其定义的术语和缩略语,缩略语在首次出现时展开,并介绍其变体 glossaries-extra;最后讨论最常见的错误:不更新的索引、不按拼音排列的条目,以及因写法不同而重复的索引项。
学习目标
- 根据各自排列的内容和为读者提供的帮助,区分主题索引、目录和术语表。
- 用子项、排序键、交叉引用、页码范围和突出显示的页码标记索引项,并预测每种标记的输出。
- 解释使用 makeindex 的编译流程、每一步生成的文件,并识别索引不更新的原因。
- 在同一文档中维护多个索引,并把每个索引项送入相应的索引。
- 用 glossaries 定义术语和缩略语,预测每次引用的输出,并编排术语表和缩略语表。
- 根据印出的索引和日志文件,诊断重复的索引项、位置错误的条目和术语表的错误。
主题索引的用途
在章节、目录与附录一课中,我们见过目录:它由 \tableofcontents 排在文档开头,babel 的中文设置把它的标题定为“目录”;它按出现顺序列出文本的各个部分,回答的是文本如何组织的问题。主题索引回答的是另一个问题:某个内容在哪里讨论。它把文本论及的概念、人名和著作按一定顺序排列,并为每一项给出所在的页码。想知道一本科学史著作对开普勒说了什么,或一本生物化学教材对焓说了什么的读者,在目录里找不到答案,因为没有哪个章节标题提到它;他要在索引里找。
由此可知,主题索引不像目录那样从文档结构中得出,而是出自作者的决定:哪些术语值得收录,以什么形式收录,又如何细分。收录每个词每一次出现的索引毫无用处,因为它把所有页码都还给了读者;好的索引收录术语被定义、讨论或应用的地方,并从读者可能查找的形式引向所选定的形式。所以索引属于专著、教材和篇幅较长的学位论文,而不属于十页的文章。
术语表是第三种工具。它不说明术语在哪里讨论,而说明术语的含义:它是一份定义的列表,常常附有文本所用缩略语的列表及其全称。两者用同一机制编排,本课先在索引上研究这一机制。
正在加载内容…
已完成
登录账户以保存您的进度