algorithm2e 和 xeCJK 导致 texlive2016 上的 TeX 容量超出

algorithm2e 和 xeCJK 导致 texlive2016 上的 TeX 容量超出

我将 Mac 上的 texlive 更新到 2016 版本后,我的文档无法编译。它在 texlive 2013 上运行良好。

以下是一个例子:

\documentclass[12pt]{report}

\usepackage[vlined,linesnumbered,noend,ruled]{algorithm2e}
\usepackage{xeCJK}

\begin{document}
  hello
\end{document}

输出:

This is XeTeX, Version 3.14159265-2.6-0.99996 (TeX Live 2016) (preloaded format=xelatex)
 restricted \write18 enabled.
entering extended mode
(./test.tex
LaTeX2e <2016/03/31>
Babel <3.9r> and hyphenation patterns for 83 language(s) loaded.
(/usr/local/texlive/2016/texmf-dist/tex/latex/base/report.cls
Document Class: report 2014/09/29 v1.4h Standard LaTeX document class
(/usr/local/texlive/2016/texmf-dist/tex/latex/base/size12.clo))
(/usr/local/texlive/2016/texmf-dist/tex/latex/algorithm2e/algorithm2e.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/base/ifthen.sty)
(/usr/local/texlive/2016/texmf-dist/tex/latex/tools/xspace.sty)
(/usr/local/texlive/2016/texmf-dist/tex/latex/relsize/relsize.sty)
********************************************************
Package `algorithm2e' Release 5.1 -- october 19 2015 --
- [email protected] mailing list for announcement about releases
- [email protected] mailing list for discussion about package
subscribe by emailing [email protected] with 'subscribe <list> <firstname name>'
- Author: Christophe Fiorio ([email protected])
********************************************************
) (/usr/local/texlive/2016/texmf-dist/tex/xelatex/xecjk/xeCJK.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/l3kernel/expl3.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/l3kernel/expl3-code.tex)
(/usr/local/texlive/2016/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def))
(/usr/local/texlive/2016/texmf-dist/tex/latex/l3packages/xtemplate/xtemplate.st
y) (/usr/local/texlive/2016/texmf-dist/tex/latex/l3packages/xparse/xparse.sty)
(/usr/local/texlive/2016/texmf-dist/tex/latex/l3packages/l3keys2e/l3keys2e.sty)
! TeX capacity exceeded, sorry [save size=80000].
<argument> ..._xeCJK_begin_int =\l__xeCJK_tmp_int
                                                  \int_incr:N \l__xeCJK_begi...
l.642 \xeCJKResetCharClass

No pages of output.
Transcript written on test.log.

我尝试过增大保存大小,但没有成功。有什么办法可以解决这个问题吗?

答案1

的第 1061 行存在问题algorithm2e.sty,内容如下

\newboolean{algocf@displaygroupmarkers}{\setboolean{algocf@displaygroupmarkers}{false}

{之前的支撑\setboolean是错误的(并且不平衡)。

这大多不会被注意到,只会在日志文件中引发警告;在的情况下xeCJK,它在已打开的组中执行的大量分配导致内存耗尽。

补救措施是,在开发人员修复该问题(几个月前就已报告)之前,复制该文件,删除错误内容{,并将其放在“个人” TeX 树中或与主文件放在同一文件夹中。

相关内容