不同 TeX 引擎之间的不同行为

不同 TeX 引擎之间的不同行为

考虑这段简单的代码,它是我找到的格式文件的一部分。

\catcode`\@=11

\ch@ck0\insc@unt\count

\bye

tex为什么对于和都能正常工作,但是对于和pdftex却会发出错误消息?xetexluatex

答案1

我在 pdftex 中也遇到了错误,你大概用的是一个旧版本。

如果你将其更改为

\catcode`\@=11

\show\ch@ck



\bye

然后使用 tex 你会得到

> \ch@ck=macro:
#1#2#3->\ifnum \count 1#1<#2\else \errmessage {No room for a new #3}\fi .
l.3 \show\ch@ck

? 

但对于包含 etex.src 宏以允许分配超过 255 的格式,您会得到

> \ch@ck=macro:
#1#2#3#4->\ifnum \count 1#1 < #2#4\else \errmessage {No room for a new #3}\fi .
l.3 \show\ch@ck

? 

\par使用 4 个参数形式,在您的代码中从空白行和错误中挑选。

相关内容