Typesmith

逻辑结构

章节、列表与交叉引用:把编号这件事彻底交给 LaTeX

基础约 20 分钟

章节命令:描述结构,而非外观

写长文档时,最烦的是编号。LaTeX 的对策是:你只用命令声明层级,编号全自动。\section{...} 是一级标题,\subsection{...} 是二级,\subsubsection{...} 是三级(article 类最深到这层)。

在命令后加一个星号 * 表示不编号:\section*{致谢} 会正常显示标题,但不参与编号、也不进目录。致谢、附录说明这类内容通常就用带星号的写法。

这正是「内容与格式分离」的精髓:想给全文标题换个字体或颜色,只需改一处设置,不必逐个标题去动。而且只要调整章节顺序,编号和引用会自动重算——这在你修改论文结构时能救命。

章节层级与自动编号
pdfLaTeX
编辑器加载中…
引擎:pdfLaTeX

点击「编译运行」生成真实 PDF

重点看两个地方:① 编号自动生成了 1、1.1、1.1.1;② 带星号的 Acknowledgements 没编号,所以它后面的 Method 依然接着编号为 2,而不是 3。

自动目录:\tableofcontents

既然章节结构都告诉 LaTeX 了,生成目录自然是一行命令的事:在需要放目录的位置写 \tableofcontents,它会根据你所有的 section/subsection 自动排出目录,连同页码。

注意:带星号的章节默认不进目录。另外,目录的页码同样依赖「编译两遍」的机制(第一遍收集、第二遍回填),本站在线编译已经自动处理;本地编译时第一次可能看到目录为空或页码不对,再编一遍即可。

自动生成目录
pdfLaTeX
编辑器加载中…
引擎:pdfLaTeX

点击「编译运行」生成真实 PDF

把 \tableofcontents 挪到 \section{Introduction} 后面,目录就会出现在正文中间——它只是一个「占位符」,放哪儿由你决定。

三种列表:itemize、enumerate、description

itemize 是无序列表,每项前面是圆点;enumerate 是有序列表,自动编号 1. 2. 3.;description 是定义列表,用 \item[词条] 给每项指定自己的标签。

三个环境的用法完全一致:整体用 \begin{...} ... \end{...} 包住,每一项以 \item 开头。列表可以嵌套——把一个列表放进某项的后面,LaTeX 会自动换个符号、加深缩进,不需要你手工调。

三种列表与嵌套
pdfLaTeX
编辑器加载中…
引擎:pdfLaTeX

点击「编译运行」生成真实 PDF

注意嵌套列表:内层会自动换成短横线符号并缩进。你只管写 item,符号和层级交给 LaTeX。

交叉引用:\label 与 \ref

交叉引用是 LaTeX 的看家本领。做法分两步:在要被引用的对象(章节、公式、图表)后面放一个 \label{记号};在正文里用 \ref{记号} 显示它的编号。编号变了,引用自动跟着变。

记号是你自己起的名字,习惯上加前缀防止混淆:sec: 章节、fig: 图、tab: 表、eq: 公式。比如 \label{sec:intro} 配合 \ref{sec:intro}。

为什么有时会看到 ????因为引用需要编译器跑两遍:第一遍记录每个记号对应的编号,第二遍才把编号填回 \ref 的位置。本站的在线编译会自动多编几遍;你自己本地编译时若见到 ???,再编译一次就好。

交叉引用让编号自动同步
pdfLaTeX
编辑器加载中…
引擎:pdfLaTeX

点击「编译运行」生成真实 PDF

把两个 section 的顺序对调再编译:\ref 显示的编号会自动跟着变,你一个字都不用改。这就是交叉引用相对于「手打第 1 节」的价值。

练习:搭一篇文章的大纲
pdfLaTeX

搭一个大纲:两个编号 \section,其中第一个包含两个 \subsection;在任一 section 加 \label 并在别处用 \ref 引用它;再加一个至少两项的 enumerate 列表。

编辑器加载中…

检查点(实时)

  • 给某个 section 加 \label{...}
  • 正文里用 \ref{...} 引用
  • 至少两个 \subsection
  • enumerate 里至少两个 \item

🎯 目标效果

1Plan

This plan is described in Section ???.

1.1Reading

1.2Practice

  1. Read lesson one
  2. Do the exercises

2Notes

引擎:pdfLaTeX

点击「编译运行」生成真实 PDF

练习:进阶:带目录与不编号章节的文档
pdfLaTeX

写一份带目录的文档:先 \tableofcontents,再写两个编号 section和一个带星号的 \section*{参考文献},并确保带星号的章节不参与编号。

编辑器加载中…

检查点(实时)

  • 用 \tableofcontents 生成目录
  • 写一个带星号的 \section*{...}
  • 至少两个编号 \section

🎯 目标效果

目录

  • 1Background
  • 2Results
  • References
  • 1Background
  • 2Results

1Background

Text here.

2Results

Text here.

References

This section is not numbered.

引擎:pdfLaTeX

点击「编译运行」生成真实 PDF

完成所有练习的检查点会自动记录