本文档来自 Overleaf 博客。Overleaf 于 2026 年 8 月 18 日发布了 TeX Live 2026。我们也已将 ayaka-notes/texlive-full 更新到 TeX Live 2026。
什么是 TeX Live?
TeX Live 是 TeX 排版系统的免费发行版,包含许多 TeX 相关的程序、字体和宏包(包括 LaTeX),由一群核心 TeX 用户和 TeX 用户组维护。Overleaf 在其编译服务器上使用 TeX Live 来驱动预览并生成你的项目 PDF。 随着 TeX Live 2026 的推出,用户可以创建完全无障碍的带标签(tagged)PDF,包括可被读取的数学公式。我现有的项目还能照常工作吗?
可以。你现有的项目仍将照常工作,因为它们会继续使用创建时的 TeX Live 版本。除非必要,我们不建议更改现有项目的 TeX Live 版本;更改可能会导致新的错误或警告。 注意: Overleaf 模板库中可能有一些模板在启用无障碍选项后无法正常工作或编译。大多数模板并非由 Overleaf 创建或维护;如有任何问题,请联系模板作者。我可以将现有项目切换到 TeX Live 2026 吗?
可以,你可以轻松地将现有项目切换到 TeX Live 2026,整个过程简单省心。在要更改的项目中打开 Settings,然后点击侧边栏中的 Compiler,你会看到一个用于选择 TeX Live 版本的下拉菜单。这样你就可以快速更新项目,以满足出版商、预印本服务器以及其他使用特定 TeX Live 版本编译投稿的平台的要求。 如果你的项目在 TeX Live 2025(或更早版本)中编译正常,但在 TeX Live 2026 中报错,这可能是由于内核或某些宏包的变更所致。已知某些宏包在 TeX Live 2026 下会产生新的错误或警告;我们在下文的单独章节中汇总了最常见的问题及其修复方法。TeX Live 2026 的主要变化
带标签的无障碍 PDF 已脱离原型阶段
自 LaTeX Project 的 2025 年 11 月更新以来,标签功能不再被描述为原型,而是被认为可以用于生产工作流——前提是你的文档只使用已经支持标签功能的宏包和文档类。 启用带标签的 PDF 输出只需在\documentclass 之前放置一条命令:
\DocumentMetadata 还会开启一些默认设置:T1 字体编码,以及自 2025 年 6 月起输出 PDF 2.0 而非较旧的 1.7 版本。PDF 2.0 在这里很重要,因为正是它支持 MathML 标签(这让屏幕阅读器能够读取数学公式,而不是面对一堵无标注的符号墙)。
一些实用说明:
- 在起草阶段,你可以设置
tagging = draft,保留无障碍警告但跳过结构树的写入(对加快长文档的编译很有用)。 - check-tagging-status 键会在日志末尾报告你所使用的宏包是否已知与标签功能兼容。你还可以在开始之前查看一个实时状态数据库。
- 如果你只需要 PDF 管理功能而不需要标签代码,现在有一个单独的
pdfmanagement宏包可供使用。
\DocumentMetadata 现在在一个文档中只能调用一次。第二次调用会导致编译错误,就像第二次使用 \documentclass 一样。
带语义的无障碍数学公式
自 2025 年 11 月起新增的\MathMLintent 和 \MathMLarg 允许作者告诉辅助技术某个记号的含义,而不仅仅是它的构成方式。例如,|y| 现在可以被朗读为 “y 的绝对值”,而不是 “竖线 y 竖线”。
无障碍数学标签需要使用 LuaLaTeX 编译(因为它是生成 MathML 的引擎),并且需要使用 unicode-math 或 lua-unicode-math 宏包。
图形和插图现在也能承载语义
无障碍功能不仅限于文本和数学公式。\includegraphics、picture 和 tikzpicture 现在都接受无障碍相关的键,因此可以对每个图形进行恰当的标注:
todonotes 之类的情况)。TikZ 输出开箱即用地受到支持。
用于创建带标签无障碍演示文稿的新文档类
beamer 文档类在 LaTeX 中制作演示幻灯片时非常流行。遗憾的是,它与 LaTeX 标签代码不兼容。为此,一个全新的文档类 ltx-talk 从零开始被创建出来。它的语法与 beamer 大体相似,但 ltx-talk 尚未实现 beamer 的全部功能。
用于设置章节标题样式的新模板机制
章节标题命令已在 LaTeX 内核中借助新的模板机制重新实现,解决了titlesec 等宏包与 LaTeX 标签代码不完全兼容的问题。下面是一个简单示例:
底层重构的内核
在今年的内核中,一些限制已被移除:- 输出例程现在可配置: 近 40 年来,LaTeX 的页面组装机制实际上是硬编码的,需要修改它的宏包不得不覆盖内部代码。现在它提供了钩子(hooks)和插槽(sockets)来进行修改。宏包因此变得更加稳定,也更不容易相互冲突。
- 现代化的标记机制: 旧的
\markboth/\leftmark/\rightmark系统只支持两个相互交织的标记,现已基于一个灵活的系统重建,支持任意数量的独立标记,同时那些熟悉的命令仍然与以前完全一样地工作。 - 块环境和章节标题现在基于模板运行: 列表、引用、类定理环境以及现在的标题命令共享一个一致的底层系统。一个实际的好处是:LaTeX 正开始原生模拟
enumitem和amsthm的\newtheoremstyle等流行宏包,titlesec的模拟也在进行中。现在仅仅为了重新设置列表或定理框的样式而安装宏包的需求减少了。 - 类定理环境的交叉引用更完善: 新的
\newcounteralias命令意味着,与定理共享计数器的引理在通过cleveref、zref-clever或hyperref引用时,会正确显示为 “lemma 1”,而不是 “theorem 1”。
expl3;此外,“伪数学”(仅为定位盒子而使用数学模式)已从 \textsuperscript、\parbox/minipage 等结构以及表格结构周围移除。这改善了标签功能和从右到左文本的支持,但如果你将 \showoutput 的结果与旧版 TeX Live 进行比较,就会注意到这一差异。
新的覆盖范围:更多语言
- 婆罗米系文字的索引功能(包括孟加拉文、古吉拉特文、卡纳达文、马拉雅拉姆文、僧伽罗文、泰米尔文和泰卢固文)已在
upmendex中以实验性方式推出。 - 新的 BCP 47 语言元数据键(
language、other-languages)让你可以精确声明文档的语言,细化到地区变体,这些信息也会写入 PDF 自身的语言元数据中。
其他需要注意的事项
enumerate、theorem和verbatim宏包现在被视为旧版宏包;对于新文档,请分别优先使用enumitem、amsthm和fancyvrb。- 如果你使用的打印工作流或平台需要较旧的 PDF 版本,你仍然可以自行设置 PDF 版本(例如
\DocumentMetadata{pdfversion=1.7}),TeX Live 2026 文档中也介绍了如何按照较早的默认设置编译文档。 - 你可以在 TeX 用户组(TUG)网站上找到 TeX Live 2026 的官方发行说明,以及所有 TeX Live 版本的发行说明。
受 TeX Live 2026 影响的常见宏包
在以下各节中,我们重点介绍一些会导致在 TeX Live 2025 中编译成功的项目在 TeX Live 2026 中出现编译错误的变更。不再支持的表格相关宏包
由于 LaTeX 内核中表格结构的新变更,tabu 和 tabls 宏包在 TL2026 中不再受支持——它们现在会导致编译错误。arydshln 宏包也可能与其他宏包不兼容,例如 tabularx 和 tabular* 环境。同样,重新定义 \@array 和 \tabular 的宏包或模板也会在类表格结构周围导致编译错误。
babel 已废弃的语言选项
frenchb 和 francais 语言选项现已废弃,应替换为 french。
varioref 的 bug
由于 varioref 宏包中的一个 bug,在 KOMA-Script 文档类中加载它会导致 TeX capacity exceeded 错误,并且不会生成 PDF。
KOMA-script 文档类与 capt-of
KOMA-script 文档类(scrbook、scrartcl、scrreport、scrletter)现在定义了 \captionof,因此不应再加载 capt-of 宏包。(另一方面,caption 宏包仍然可以安全地与这些文档类一起加载。)
thmtools:sibling/numberlike/sharenumber 错误
使用 thmtools 的 sibling(或 numberlike、sharenumber)选项声明新的类定理环境时,会出现计数器已被定义的错误,例如 Command \c@proposal already defined。
thmtools 之后且在 \declaretheorem 之前添加以下几行:
polyglossia、xepersian 与 array
如果你使用 polyglossia 或 xepersian 宏包排版阿拉伯文字,并且加载了 array 宏包或其他会加载 array 的表格相关宏包,那么当阿拉伯文本位于类表格结构中时,你会遇到 \UseMathForPositioningText 未定义的错误。
\documentclass 声明之前添加 \DocumentMetadata{} 来解决;或者考虑改用 babel 宏包来排版阿拉伯文字。
babel-spanish 与 biblatex-apa
在使用 biblatex 的 apa 样式时加载 babel-spanish,会导致一个与钩子和 \@makecaption 相关的编译错误:
babel 添加 shorthands=off 选项即可避免该错误。
xgreek、hyperref 与 \appendix
当加载 xgreek(仅适用于 XeLaTeX 和 LuaLaTeX)和 hyperref 宏包时,出现在 \appendix 之后的章节标题会引发编译错误:
hyperref 添加 hypertexnames=false 选项。
flowfram 与 titlesec
目前 flowfram 和 titlesec 宏包互不兼容。不过,作者可以考虑使用新的 \EditInstance 接口来设置章节标题样式,例如:
Ayakaleaf Pro 中的 TeX Live 2026
Ayakaleaf Pro 管理员可以按照通常的方式更新配置来安装 TeX Live 2026:将TEX_LIVE_DOCKER_IMAGE(以及 ALL_TEX_LIVE_DOCKER_IMAGES)指向新的 TeX Live 2026 镜像即可,无需进行其他升级。
