文件 texmf.cnf 包含位
% 如果你只想针对特定的 TeX 更改其中一些尺寸
% 变体,通常的点符号有效,例如,
%main_memory.hugetex = 20000000
hugetex
我在完整发行版中找不到任何其他参考资料texlive
。hugetex 是虚构的吗?如果不是,那它是什么?
答案1
在一个texmf.cnf
文件中你可以找到如下行
TEXINPUTS.pdflatex = .;$TEXMF/tex/{latex,generic,}//
或者
TEXINPUTS.lualatex = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
这意味着,当使用名称调用二进制文件时pdflatex
(二进制文件本身为pdftex
),变量TEXINPUTS
将被设置为规定值;如果使用名称调用二进制文件lualatex
(并且二进制文件为luatex
),则将使用不同的值。
二进制文件的设置方式是,如果您对它们建立符号链接,它们将使用根据符号链接名称的格式以及texmf.cnf
根据相同名称或“非点名称”设置的变量。
例如,只有
BIBINPUTS = .;$TEXMF/bibtex/bib//
它将由链接到该库的所有二进制文件使用kpathsea
(当然它只与bibtex
、bibtex8
和相关bibtexu
)。
如果想要二进制文件hugetex
,则需要添加内存设置,例如
main_memory.hugetex = 20000000
并可选地设置其他变量,例如TEXINPUTS
。然后,您可以创建一个指向所需引擎的符号链接,例如pdftex
或tex
,称为hugetex
并创建格式(有关如何执行此操作,请参阅 TeX Live 的文档)。
这些设置应该添加到哪里?添加到顶部texmf.cnf
,您可以通过输入找到它的位置kpsewhich texmf.cnf
。在我的系统上,这显示
/usr/local/texlive/2017/texmf.cnf
因为这是读入的第一个texmf.cnf
文件,所以稍后命名的类似文件将不会覆盖已设置的值。
如今这已经不再那么重要了,因为人们几乎可以随意地用不同的方法添加内存(见词汇表包超出 TeX 容量例如),而不需要专门定制的引擎。在过去,hugetex
对于某些应用来说,拥有引擎可能是一个救命稻草。