我的设置:TeX Live,版本 2014.20141024-2(与 Debian 8 Jessie 一起打包)
里面man tex
写着:
... 当调用为 tex 时,使用 tex 格式,它与纯格式相同...
如果是这样,为什么以下两个命令中的问候语不同?(TeXk 而不是 TeX;并且添加了 \write18)
$ tex
This is TeX, Version 3.14159265 (preloaded format=tex)
**
$ initex '\input plain \dump'
$ tex -fmt plain
This is TeXk, Version 3.14159265 (preloaded format=plain)
restricted \write18 enabled.
**
另外,我需要用从 plain.tex 创建的本地 tex.fmt 覆盖默认 tex.fmt:
我将新的 tex.fmt 放到 /usr/local/share/texmf/web2c/,然后在其上运行 texhash。
kpsewhich tex.fmt
结果/usr/local/share/texmf/web2c/tex.fmt
与预期一致。
但是当我运行“tex”时,它使用默认的 tex.fmt,
如何覆盖它?
编辑:将新的 tex.fmt 放入 /usr/local/share/texmf/web2c/tex/,它就可以工作了。
答案1
tex.fmt 由以下人员创建
\input plain
\dump
\endinput
因此它与 plain.fmt 相同。在 TeX 的当前实现中,横幅
This is TeX, Version 3.14159265 ...
仅当 TeX 与 Knuth 的原始 TeX 几乎相同时才会打印。这可以通过程序名称“tex”来区分。在
tex --fmt=plain ...
程序名称被重置为
plain
因此,一些扩展如
parse_first_line
已启用。在这种情况下,横幅变为
This is TeXk, Version 3.14159265 ...
如果你输入
tex --progname=tex --fmt=plain ...
然后横幅又出现了
This is TeX, Version 3.14159265 ...