LaTeX

latex中给公式标号,手动与自动别混用

更新于

latex中给公式标号,先区分“要一个可引用的编号”和“只想在旁边显示几个字符”。手工敲出的括号数字不会随前文插入公式而自动更新;自动编号则依赖环境、计数器和标签。两种方式混在一起,最容易出现正文引用指错对象的问题。

自动编号需要标签与引用配合

完整 TeX 文档里,带编号的公式环境会推进相应计数器。给公式设置 \label{eq:balance} 这类有意义的标签,再在正文中用相应引用命令取值,比直接写“式三”更便于修改。标签名称用于定位,不需要模仿当前显示的编号。

使用数学宏包提供的 \eqref{eq:balance} 时,应确认已经采用相应方案。公式标签放在正确的编号环境里,避免把标签留在环境外而关联到别的计数对象。新增公式后,需要完成足够的处理轮次,让引用信息更新。

先做一个两条公式和两处引用的小测试。在前面插入新式,检查编号与正文引用是否一起改变。若数字变了而文字引用没变,先确认正文是不是手写的死文本;若出现未解析标记,再查标签拼写、重复标签和处理是否完成。

手动显示号码不等于维护顺序

特殊编号有时需要 \tag{A} 这类显式标签写法,但它与默认数字序列的关系要按照所用环境处理。采用手动显示之前,先确定接收方是否允许这种编号,以及后续公式应如何继续计数。

不要在公式正文末尾直接写一个括号数字,靠空格推到右侧,再期望交叉引用能找到它。那只是内容里的字符,没有自动编号对象。位置也会随行宽与字体变化,不适合作为长稿的维护方式。

两块区域由三条细线一一对应,手写的号码不会随公式增删自动更新

需要引用特殊标签时,仍要给对应公式配置适当标签并测试引用结果。整篇采用一套明确规则,遇到附录或分节编号时在相应层级设置,比每遇到一个例外就手工改一个数字更容易检查。相同标签名不能随意复用,否则引用可能落到错误对象。

实验室同学讨论论文插图编排

不编号与跳过一个数字要分开处理

某条中间推导无需引用时,可以选择不编号的环境;在适用的多行数学环境中,也可以对指定行使用 \notag 或 \nonumber。这表示不展示该行号码,不等于必须让后续数字凭空跳过一位。

若接收方确实要求后面从特定数字继续,则涉及计数器调整。应在副本中验证调整位置和后续结果,并检查正文引用。不要把“这一条不编号”和“下一条必须叫某个号码”合并成一个模糊操作。

多行推导还要决定一组共用号码,还是每行分别编号。按正文引用需要选择,再核对各行标签。如果正文只引用整个推导,给每个中间变形都加号码可能增加阅读负担,也使后续编辑更复杂。

两栏对照右栏只亮一块,不编号与跳过一个号码是两种不同处理

带到其他文档后重新确认引用机制

转换为办公文档时,原来的交叉引用机制不一定完整保留。公式看起来有号码,也可能只是普通文字。应尝试在副本中插入一个新公式,看引用能否按预期更新,不能只验收静态外观。

本站可以编辑公式并插入文档,也能导出 Word 原生公式对象,便于接收方继续修改数学内容。但这不表示原 TeX 项目的所有编号与引用规则都会自动迁移。导出需登录与会员,公式导出应在「可视化」模式操作。交稿前逐一核对被引用的公式和显示号码,把公式可编辑与引用能联动分别验收。

延伸阅读

  • LaTeX 所见即所得编辑器:认识显示结果背后的结构。
  • latex排版:用一致的结构维护长稿。

常见问题

需要在某处跳过编号该怎么做?
若该式不需要号码,应使用不编号的环境或在适用的多行环境中抑制该行编号。若是必须跳到指定数字,应按模板管理计数器,并同步核对后续编号与引用,避免把两种需求混淆。