summaryrefslogtreecommitdiff
path: root/libre/texlive-core/texmf.cnf
diff options
context:
space:
mode:
Diffstat (limited to 'libre/texlive-core/texmf.cnf')
-rw-r--r--libre/texlive-core/texmf.cnf391
1 files changed, 237 insertions, 154 deletions
diff --git a/libre/texlive-core/texmf.cnf b/libre/texlive-core/texmf.cnf
index 2408b1713..40d0b901b 100644
--- a/libre/texlive-core/texmf.cnf
+++ b/libre/texlive-core/texmf.cnf
@@ -4,8 +4,9 @@
% If you modify this original file, YOUR CHANGES WILL BE LOST when it is
% updated. Instead, put your changes -- and only your changes, not an
% entire copy! -- in ../../texmf.cnf. That is, if this file is
-% installed in /some/path/to/texlive/2018/texmf-dist/web2c/texmf.cnf,
-% add your custom settings to /some/path/to/texlive/2018/texmf.cnf.
+% installed in /some/path/to/texlive/2021/texmf-dist/web2c/texmf.cnf,
+% put your custom settings in /some/path/to/texlive/2021/texmf.cnf.
+% (Below, we use YYYY in place of the specific year.)
%
% What follows is a super-summary of what this .cnf file can
% contain. Please read the Kpathsea manual for more information.
@@ -109,12 +110,12 @@ TEXMFAUXTREES = {}
% the search paths. tlmgr takes care to end any value with a trailing comma.
TEXMF = {$TEXMFCONFIG,$TEXMFVAR,$TEXMFHOME,!!$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFLOCAL,!!$TEXMFDIST}
-% Where to look for ls-R files. There need not be an ls-R in the
-% directories in this path, but if there is one, Kpathsea will use it.
-% By default, this is only the !! elements of TEXMF, so that mktexlsr
-% does not create ls-R files in the non-!! elements -- because if an
-% ls-R is present, it will be used, and the disk will not be searched.
-% This is arguably a bug in kpathsea.
+% Where to look for, and where mktexlsr creates, ls-R files. By default,
+% this is all and only the !! elements of TEXMF, so that mktexlsr does not
+% create ls-R files in the non-!! elements -- because if an ls-R is
+% present, it will be used, and the disk will not (usually) be searched,
+% regardless of !!. Although in principle a directory listed here need
+% not contain an ls-R file, in practice they all should.
TEXMFDBS = {!!$TEXMFLOCAL,!!$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFDIST}
% The system trees. These are the trees that are shared by all users.
@@ -153,131 +154,161 @@ VARTEXFONTS = $TEXMFVAR/fonts
% a good place to look for them.
WEB2C = $TEXMF/web2c
+% This variable exists only to be redefined; it is used in nearly all
+% search paths. If a document has source files not only in the current
+% directory but also in subdirectories, it is convenient to set
+% TEXMFDOTDIR=.// so that everything will be searched automatically.
+% On the other hand, if you never want the current directory to be
+% searched at all, setting TEXMFDOTDIR=/nonesuch should come close.
+%
+TEXMFDOTDIR = .
+
% TEXINPUTS is for TeX input files -- i.e., anything to be found by \input
% or \openin, including .sty, .eps, etc. We specify paths for all known
% formats, past or present. Not all of them are built these days.
% Plain TeX. Have the command tex check all directories as a last
-% resort, we may have plain-compatible stuff anywhere.
-TEXINPUTS.tex = .;$TEXMF/tex/{plain,generic,}//
+% resort, we may have plain-compatible stuff anywhere. Prefer
+% latex/ to latex-dev/, implying that we have to add a latex, element to
+% every TEXINPUTS tree that recursively searches $TEXMF/tex//, which is
+% all of them except ConTeXt.
+TEXINPUTS.tex = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,latex,}//
% Fontinst needs to read afm files.
-TEXINPUTS.fontinst = .;$TEXMF/{tex,fonts/afm}//
+TEXINPUTS.fontinst = $TEXMFDOTDIR;$TEXMF/{tex,fonts/afm}//
% Other plain-based formats.
-TEXINPUTS.amstex = .;$TEXMF/tex/{amstex,plain,generic,}//
-TEXINPUTS.csplain = .;$TEXMF/tex/{csplain,plain,generic,}//
-TEXINPUTS.eplain = .;$TEXMF/tex/{eplain,plain,generic,}//
-TEXINPUTS.ftex = .;$TEXMF/tex/{formate,plain,generic,}//
-TEXINPUTS.mex = .;$TEXMF/tex/{mex,plain,generic,}//
-TEXINPUTS.texinfo = .;$TEXMF/tex/{texinfo,plain,generic,}//
-
-% LaTeX 2e specific macros are stored in latex/, macros that can only be
+TEXINPUTS.amstex = $TEXMFDOTDIR;$TEXMF/tex/{amstex,plain,generic,latex,}//
+TEXINPUTS.csplain = $TEXMFDOTDIR;$TEXMF/tex/{csplain,plain,generic,latex,}//
+TEXINPUTS.eplain = $TEXMFDOTDIR;$TEXMF/tex/{eplain,plain,generic,latex,}//
+TEXINPUTS.ftex = $TEXMFDOTDIR;$TEXMF/tex/{formate,plain,generic,latex,}//
+TEXINPUTS.mex = $TEXMFDOTDIR;$TEXMF/tex/{mex,plain,generic,latex,}//
+TEXINPUTS.texinfo = $TEXMFDOTDIR;$TEXMF/tex/{texinfo,plain,generic,latex,}//
+
+% LaTeX2e specific macros are stored in latex/, macros that can only be
% used with 2.09 in latex209/. In addition, we look in the directory
% latex209, useful for macros that were written for 2.09 and do not
-% mention 2e at all, but can be used with 2e.
-TEXINPUTS.cslatex = .;$TEXMF/tex/{cslatex,csplain,latex,generic,}//
-TEXINPUTS.latex = .;$TEXMF/tex/{latex,generic,}//
-TEXINPUTS.latex209 = .;$TEXMF/tex/{latex209,generic,latex,}//
-TEXINPUTS.olatex = .;$TEXMF/tex/{latex,generic,}//
+% mention 2e at all, but can be used with 2e. The latex-dev/ subtree
+% may contain release candidates for testing.
+TEXINPUTS.cslatex = $TEXMFDOTDIR;$TEXMF/tex/{cslatex,csplain,latex,generic,}//
+TEXINPUTS.latex = $TEXMFDOTDIR;$TEXMF/tex/{latex,generic,}//
+TEXINPUTS.latex-dev = $TEXMFDOTDIR;$TEXMF/tex/{latex-dev,latex,generic,}//
+TEXINPUTS.latex209 = $TEXMFDOTDIR;$TEXMF/tex/{latex209,generic,latex,}//
+TEXINPUTS.olatex = $TEXMFDOTDIR;$TEXMF/tex/{latex,generic,}//
% MLTeX.
-TEXINPUTS.frlatex = .;$TEXMF/tex/{french,latex,generic,}//
-TEXINPUTS.frtex = .;$TEXMF/tex/{french,plain,generic,}//
-TEXINPUTS.mllatex = .;$TEXMF/tex/{latex,generic,}//
-TEXINPUTS.mltex = .;$TEXMF/tex/{plain,generic,}//
+TEXINPUTS.frlatex = $TEXMFDOTDIR;$TEXMF/tex/{french,latex,generic,}//
+TEXINPUTS.frtex = $TEXMFDOTDIR;$TEXMF/tex/{french,plain,generic,latex,}//
+TEXINPUTS.mllatex = $TEXMFDOTDIR;$TEXMF/tex/{latex,generic,}//
+TEXINPUTS.mltex = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,latex,}//
% e-TeX.
-TEXINPUTS.elatex = .;$TEXMF/tex/{latex,generic,}//
-TEXINPUTS.etex = .;$TEXMF/tex/{plain,generic,}//
+TEXINPUTS.elatex = $TEXMFDOTDIR;$TEXMF/tex/{latex,generic,}//
+TEXINPUTS.etex = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,latex,}//
% pdfTeX.
-TEXINPUTS.pdfcslatex = .;$TEXMF/tex/{cslatex,csplain,latex,generic,}//
-TEXINPUTS.pdfcsplain = .;$TEXMF/tex/{csplain,plain,generic,}//
-TEXINPUTS.pdflatex = .;$TEXMF/tex/{latex,generic,}//
-TEXINPUTS.pdfmex = .;$TEXMF/tex/{mex,plain,generic,}//
-TEXINPUTS.utf8mex = .;$TEXMF/tex/{mex,plain,generic,}//
-TEXINPUTS.pdftex = .;$TEXMF/tex/{plain,generic,}//
-TEXINPUTS.pdftexinfo = .;$TEXMF/tex/{texinfo,plain,generic,}//
-TEXINPUTS.pdfamstex = .;$TEXMF/tex/{amstex,plain,generic,}//
+TEXINPUTS.pdfcslatex = $TEXMFDOTDIR;$TEXMF/tex/{cslatex,csplain,latex,generic,}//
+TEXINPUTS.pdfcsplain = $TEXMFDOTDIR;$TEXMF/tex/{csplain,plain,generic,latex,}//
+TEXINPUTS.pdflatex = $TEXMFDOTDIR;$TEXMF/tex/{latex,generic,}//
+TEXINPUTS.pdflatex-dev = $TEXMFDOTDIR;$TEXMF/tex/{latex-dev,latex,generic,}//
+TEXINPUTS.pdfmex = $TEXMFDOTDIR;$TEXMF/tex/{mex,plain,generic,latex,}//
+TEXINPUTS.utf8mex = $TEXMFDOTDIR;$TEXMF/tex/{mex,plain,generic,latex,}//
+TEXINPUTS.pdftex = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,latex,}//
+TEXINPUTS.pdftexinfo = $TEXMFDOTDIR;$TEXMF/tex/{texinfo,plain,generic,latex,}//
+TEXINPUTS.pdfamstex = $TEXMFDOTDIR;$TEXMF/tex/{amstex,plain,generic,latex,}//
% pdfeTeX.
-TEXINPUTS.pdfelatex = .;$TEXMF/tex/{latex,generic,}//
-TEXINPUTS.pdfetex = .;$TEXMF/tex/{plain,generic,}//
+TEXINPUTS.pdfelatex = $TEXMFDOTDIR;$TEXMF/tex/{latex,generic,}//
+TEXINPUTS.pdfetex = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,latex,}//
% LuaTeX.
-TEXINPUTS.luatex = .;$TEXMF/tex/{luatex,plain,generic,}//
-TEXINPUTS.luajittex = .;$TEXMF/tex/{luatex,plain,generic,}//
-TEXINPUTS.dviluatex = .;$TEXMF/tex/{luatex,plain,generic,}//
-TEXINPUTS.lualatex = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
-TEXINPUTS.luajitlatex = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
-TEXINPUTS.dvilualatex = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
+TEXINPUTS.luatex = $TEXMFDOTDIR;$TEXMF/tex/{luatex,plain,generic,latex,}//
+TEXINPUTS.luajittex = $TEXMFDOTDIR;$TEXMF/tex/{luatex,plain,generic,latex,}//
+TEXINPUTS.luahbtex = $TEXMFDOTDIR;$TEXMF/tex/{luatex,plain,generic,latex,}//
+TEXINPUTS.luajithbtex = $TEXMFDOTDIR;$TEXMF/tex/{luatex,plain,generic,latex,}//
+TEXINPUTS.dviluatex = $TEXMFDOTDIR;$TEXMF/tex/{luatex,plain,generic,latex,}//
+TEXINPUTS.lualatex = $TEXMFDOTDIR;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
+TEXINPUTS.lualatex-dev = $TEXMFDOTDIR;$TEXMF/tex/{latex-dev,lualatex,latex,luatex,generic,}//
+TEXINPUTS.luajitlatex = $TEXMFDOTDIR;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
+TEXINPUTS.luahblatex = $TEXMFDOTDIR;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
+TEXINPUTS.luahblatex-dev = $TEXMFDOTDIR;$TEXMF/tex/{latex-dev,lualatex,latex,luatex,generic,}//
+TEXINPUTS.luajithblatex = $TEXMFDOTDIR;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
+TEXINPUTS.dvilualatex = $TEXMFDOTDIR;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
+TEXINPUTS.dvilualatex-dev = $TEXMFDOTDIR;$TEXMF/tex/{latex-dev,lualatex,latex,luatex,generic,}//
+
+% HarfTeX.
+TEXINPUTS.harftex = $TEXMFDOTDIR;$TEXMF/tex/{harftex,luatex,plain,generic,latex,}//
+TEXINPUTS.harflatex = $TEXMFDOTDIR;$TEXMF/tex/{harflatex,harftex,lualatex,latex,luatex,generic,}//
+TEXINPUTS.harflatex-dev = $TEXMFDOTDIR;$TEXMF/tex/{latex-dev,harflatex,harftex,lualatex,latex,luatex,generic,}//
% XeTeX.
-TEXINPUTS.xelatex = .;$TEXMF/tex/{xelatex,latex,xetex,generic,}//
-TEXINPUTS.xeplain = .;$TEXMF/tex/{xeplain,eplain,plain,xetex,generic,}//
-TEXINPUTS.xetex = .;$TEXMF/tex/{xetex,plain,generic,}//
+TEXINPUTS.xelatex = $TEXMFDOTDIR;$TEXMF/tex/{xelatex,latex,xetex,generic,}//
+TEXINPUTS.xelatex-dev = $TEXMFDOTDIR;$TEXMF/tex/{latex-dev,xelatex,latex,xetex,generic,}//
+TEXINPUTS.xeplain = $TEXMFDOTDIR;$TEXMF/tex/{xeplain,eplain,plain,xetex,generic,latex,}//
+TEXINPUTS.xetex = $TEXMFDOTDIR;$TEXMF/tex/{xetex,plain,generic,latex,}//
% Omega / Aleph.
-TEXINPUTS.aleph = .;$TEXMF/tex/{plain,generic,}//
-TEXINPUTS.elambda = .;$TEXMF/tex/{lambda,latex,generic,}//
-TEXINPUTS.eomega = .;$TEXMF/tex/{plain,generic,}//
-TEXINPUTS.lambda = .;$TEXMF/tex/{lambda,latex,generic,}//
-TEXINPUTS.lamed = .;$TEXMF/tex/{lambda,latex,generic,}//
-TEXINPUTS.omega = .;$TEXMF/tex/{plain,generic,}//
+TEXINPUTS.aleph = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,latex,}//
+TEXINPUTS.elambda = $TEXMFDOTDIR;$TEXMF/tex/{lambda,latex,generic,}//
+TEXINPUTS.eomega = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,latex,}//
+TEXINPUTS.lambda = $TEXMFDOTDIR;$TEXMF/tex/{lambda,latex,generic,}//
+TEXINPUTS.lamed = $TEXMFDOTDIR;$TEXMF/tex/{lambda,latex,generic,}//
+TEXINPUTS.omega = $TEXMFDOTDIR;$TEXMF/tex/{plain,generic,latex,}//
% p(La)TeX.
-TEXINPUTS.ptex = .;$TEXMF/tex/{ptex,plain,generic,}//
-TEXINPUTS.platex = .;$TEXMF/tex/{platex,latex,generic,}//
+TEXINPUTS.ptex = $TEXMFDOTDIR;$TEXMF/tex/{ptex,plain,generic,latex,}//
+TEXINPUTS.platex = $TEXMFDOTDIR;$TEXMF/tex/{platex,latex,generic,}//
+TEXINPUTS.platex-dev = $TEXMFDOTDIR;$TEXMF/tex/{latex-dev,platex,latex,generic,}//
-% epTeX, and for pmpost.
-TEXINPUTS.eptex = .;$TEXMF/tex/{ptex,plain,generic,}//
+% epTeX, and use that engine for pmpost.
+TEXINPUTS.eptex = $TEXMFDOTDIR;$TEXMF/tex/{ptex,plain,generic,latex,}//
TEX.pmpost = eptex
% p(La)TeX-ng
-TEXINPUTS.ptex-ng = .;$TEXMF/tex/{uptex,ptex,plain,generic,}//
-TEXINPUTS.platex-ng = .;$TEXMF/tex/{uplatex,platex,latex,generic,}//
+TEXINPUTS.ptex-ng = $TEXMFDOTDIR;$TEXMF/tex/{uptex,ptex,plain,generic,latex,}//
+TEXINPUTS.platex-ng = $TEXMFDOTDIR;$TEXMF/tex/{uplatex,platex,latex,generic,}//
% (e)up(La)TeX, and for upmpost
-TEXINPUTS.uplatex = .;$TEXMF/tex/{uplatex,platex,latex,generic,}//
-TEXINPUTS.uptex = .;$TEXMF/tex/{uptex,ptex,plain,generic,}//
-TEXINPUTS.euptex = .;$TEXMF/tex/{uptex,ptex,plain,generic,}//
+TEXINPUTS.uplatex = $TEXMFDOTDIR;$TEXMF/tex/{uplatex,platex,latex,generic,}//
+TEXINPUTS.uplatex-dev = $TEXMFDOTDIR;$TEXMF/tex/{latex-dev,uplatex,platex,latex,generic,}//
+TEXINPUTS.uptex = $TEXMFDOTDIR;$TEXMF/tex/{uptex,ptex,plain,generic,latex,}//
+TEXINPUTS.euptex = $TEXMFDOTDIR;$TEXMF/tex/{uptex,ptex,plain,generic,latex,}//
TEX.upmpost = euptex
% pBibTeX bibliographies and style files.
-BIBINPUTS.pbibtex = .;$TEXMF/{pbibtex,bibtex}/bib//
-BSTINPUTS.pbibtex = .;$TEXMF/{pbibtex,bibtex}/bst//
+BIBINPUTS.pbibtex = $TEXMFDOTDIR;$TEXMF/{pbibtex,bibtex}/bib//
+BSTINPUTS.pbibtex = $TEXMFDOTDIR;$TEXMF/{pbibtex,bibtex}/bst//
% upBibTeX bibliographies and style files.
-BIBINPUTS.upbibtex = .;$TEXMF/{upbibtex,pbibtex,bibtex}/bib//
-BSTINPUTS.upbibtex = .;$TEXMF/{upbibtex,pbibtex,bibtex}/bst//
+BIBINPUTS.upbibtex = $TEXMFDOTDIR;$TEXMF/{upbibtex,pbibtex,bibtex}/bib//
+BSTINPUTS.upbibtex = $TEXMFDOTDIR;$TEXMF/{upbibtex,pbibtex,bibtex}/bst//
% ConTeXt.
-TEXINPUTS.context = .;$TEXMF/tex/{context,plain,generic,}//
+TEXINPUTS.context = $TEXMFDOTDIR;$TEXMF/tex/{context,plain,generic,}//
% jadetex.
-TEXINPUTS.jadetex = .;$TEXMF/tex/{jadetex,latex,generic,}//
-TEXINPUTS.pdfjadetex = .;$TEXMF/tex/{jadetex,latex,generic,}//
+TEXINPUTS.jadetex = $TEXMFDOTDIR;$TEXMF/tex/{jadetex,latex,generic,latex,}//
+TEXINPUTS.pdfjadetex = $TEXMFDOTDIR;$TEXMF/tex/{jadetex,latex,generic,latex,}//
% XMLTeX.
-TEXINPUTS.xmltex = .;$TEXMF/tex/{xmltex,latex,generic,}//
-TEXINPUTS.pdfxmltex = .;$TEXMF/tex/{xmltex,latex,generic,}//
+TEXINPUTS.xmltex = $TEXMFDOTDIR;$TEXMF/tex/{xmltex,latex,generic,}//
+TEXINPUTS.pdfxmltex = $TEXMFDOTDIR;$TEXMF/tex/{xmltex,latex,generic,}//
% Miscellany, no longer built.
-TEXINPUTS.lamstex = .;$TEXMF/tex/{lamstex,plain,generic,}//
-TEXINPUTS.lollipop = .;$TEXMF/tex/{lollipop,plain,generic,}//
-TEXINPUTS.frpdflatex = .;$TEXMF/tex/{french,latex,generic,}//
-TEXINPUTS.frpdftex = .;$TEXMF/tex/{french,plain,generic,}//
+TEXINPUTS.lamstex = $TEXMFDOTDIR;$TEXMF/tex/{lamstex,plain,generic,latex,}//
+TEXINPUTS.lollipop = $TEXMFDOTDIR;$TEXMF/tex/{lollipop,plain,generic,latex,}//
+TEXINPUTS.frpdflatex = $TEXMFDOTDIR;$TEXMF/tex/{french,latex,generic,}//
+TEXINPUTS.frpdftex = $TEXMFDOTDIR;$TEXMF/tex/{french,plain,generic,latex,}//
% Earlier entries override later ones, so put this generic one last.
-TEXINPUTS = .;$TEXMF/tex/{$progname,generic,}//
+TEXINPUTS = $TEXMFDOTDIR;$TEXMF/tex/{$progname,generic,latex,}//
% ttf2tfm.
-TTF2TFMINPUTS = .;$TEXMF/ttf2pk//
+TTF2TFMINPUTS = $TEXMFDOTDIR;$TEXMF/ttf2pk//
% Metafont, MetaPost inputs.
-MFINPUTS = .;$TEXMF/metafont//;{$TEXMF/fonts,$VARTEXFONTS}/source//
-MPINPUTS = .;$TEXMF/metapost//
+MFINPUTS = $TEXMFDOTDIR;$TEXMF/metafont//;{$TEXMF/fonts,$VARTEXFONTS}/source//
+MPINPUTS = $TEXMFDOTDIR;$TEXMF/metapost//
% Dump files (fmt/base/mem) for vir{tex,mf,mp} to read.
% We want to find the engine-specific file, e.g., cont-en.fmt can
@@ -286,67 +317,67 @@ MPINPUTS = .;$TEXMF/metapost//
% We repeat the same definition three times because of the way fmtutil
% is implemented; if we use ${TEXFORMATS}, the mpost/mf/etc. formats
% will not be found.
-TEXFORMATS = .;$TEXMF/web2c{/$engine,}
-MFBASES = .;$TEXMF/web2c{/$engine,}
-MPMEMS = .;$TEXMF/web2c{/$engine,}
+TEXFORMATS = $TEXMFDOTDIR;$TEXMF/web2c{/$engine,}
+MFBASES = $TEXMFDOTDIR;$TEXMF/web2c{/$engine,}
+MPMEMS = $TEXMFDOTDIR;$TEXMF/web2c{/$engine,}
%
% As of 2008, pool files don't exist any more (the strings are compiled
% into the binaries), but just in case something expects to find these:
-TEXPOOL = .;$TEXMF/web2c
+TEXPOOL = $TEXMFDOTDIR;$TEXMF/web2c
MFPOOL = ${TEXPOOL}
MPPOOL = ${TEXPOOL}
% support the original xdvi. Must come before the generic settings.
-PKFONTS.XDvi = .;$TEXMF/%s;$VARTEXFONTS/pk/{%m,modeless}//
-VFFONTS.XDvi = .;$TEXMF/%s
-PSHEADERS.XDvi = .;$TEXMF/%q{dvips,fonts/type1}//
-TEXPICTS.XDvi = .;$TEXMF/%q{dvips,tex}//
+PKFONTS.XDvi = $TEXMFDOTDIR;$TEXMF/%s;$VARTEXFONTS/pk/{%m,modeless}//
+VFFONTS.XDvi = $TEXMFDOTDIR;$TEXMF/%s
+PSHEADERS.XDvi = $TEXMFDOTDIR;$TEXMF/%q{dvips,fonts/type1}//
+TEXPICTS.XDvi = $TEXMFDOTDIR;$TEXMF/%q{dvips,tex}//
% Device-independent font metric files.
-VFFONTS = .;$TEXMF/fonts/vf//
-TFMFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/tfm//
+VFFONTS = $TEXMFDOTDIR;$TEXMF/fonts/vf//
+TFMFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/tfm//
% The $MAKETEX_MODE below means the drivers will not use a cx font when
% the mode is ricoh. If no mode is explicitly specified, kpse_prog_init
% sets MAKETEX_MODE to /, so all subdirectories are searched. See the manual.
% The modeless part guarantees that bitmaps for PostScript fonts are found.
-PKFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/pk/{$MAKETEX_MODE,modeless}//
+PKFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/pk/{$MAKETEX_MODE,modeless}//
% Similarly for the GF format, which only remains in existence because
% Metafont outputs it (and MF isn't going to change).
-GFFONTS = .;$TEXMF/fonts/gf/$MAKETEX_MODE//
+GFFONTS = $TEXMFDOTDIR;$TEXMF/fonts/gf/$MAKETEX_MODE//
% A backup for PKFONTS and GFFONTS. Not used for anything.
-GLYPHFONTS = .;$TEXMF/fonts
+GLYPHFONTS = $TEXMFDOTDIR;$TEXMF/fonts
% A place to puth everything that doesn't fit the other font categories.
-MISCFONTS = .;$TEXMF/fonts/misc//
+MISCFONTS = $TEXMFDOTDIR;$TEXMF/fonts/misc//
% font name map files. This isn't just fonts/map// because ConTeXt
% wants support for having files with the same name in the different
% subdirs. Maybe if the programs ever get unified to accepting the same
% map file syntax the definition can be simplified again.
-TEXFONTMAPS = .;$TEXMF/fonts/map/{$progname,pdftex,dvips,}//
+TEXFONTMAPS = $TEXMFDOTDIR;$TEXMF/fonts/map/{$progname,pdftex,dvips,}//
% BibTeX bibliographies and style files. bibtex8 also uses these.
-BIBINPUTS = .;$TEXMF/bibtex/bib//
-BSTINPUTS = .;$TEXMF/bibtex/{bst,csf}//
+BIBINPUTS = $TEXMFDOTDIR;$TEXMF/bibtex/bib//
+BSTINPUTS = $TEXMFDOTDIR;$TEXMF/bibtex/{bst,csf}//
% MlBibTeX.
-MLBIBINPUTS = .;$TEXMF/bibtex/bib/{mlbib,}//
-MLBSTINPUTS = .;$TEXMF/bibtex/{mlbst,bst}//
+MLBIBINPUTS = $TEXMFDOTDIR;$TEXMF/bibtex/bib/{mlbib,}//
+MLBSTINPUTS = $TEXMFDOTDIR;$TEXMF/bibtex/{mlbst,bst}//
% .ris and .bltxml bibliography formats.
-RISINPUTS = .;$TEXMF/biber/ris//
-BLTXMLINPUTS = .;$TEXMF/biber/bltxml//
+RISINPUTS = $TEXMFDOTDIR;$TEXMF/biber/ris//
+BLTXMLINPUTS = $TEXMFDOTDIR;$TEXMF/biber/bltxml//
% MFT style files.
-MFTINPUTS = .;$TEXMF/mft//
+MFTINPUTS = $TEXMFDOTDIR;$TEXMF/mft//
% PostScript headers and prologues (.pro); unfortunately, some programs
% also use this for acessing font files (enc, type1, truetype)
-TEXPSHEADERS = .;$TEXMF/{dvips,fonts/{enc,type1,type42,type3}}//
-TEXPSHEADERS.gsftopk = .;$TEXMF/{dvips,fonts/{enc,type1,type42,type3,truetype}}//
+TEXPSHEADERS = $TEXMFDOTDIR;$TEXMF/{dvips,fonts/{enc,type1,type42,type3}}//
+TEXPSHEADERS.gsftopk = $TEXMFDOTDIR;$TEXMF/{dvips,fonts/{enc,type1,type42,type3,truetype}}//
% OSFONTDIR is to provide a convenient hook for allowing TeX to find
% fonts installed on the system (outside of TeX). An empty default
@@ -354,54 +385,54 @@ TEXPSHEADERS.gsftopk = .;$TEXMF/{dvips,fonts/{enc,type1,type42,type3,truetype}}/
% OSFONTDIR = /usr/share/fonts
% PostScript Type 1 outline fonts.
-T1FONTS = .;$TEXMF/fonts/type1//;$OSFONTDIR//
+T1FONTS = $TEXMFDOTDIR;$TEXMF/fonts/type1//;$OSFONTDIR//
% PostScript AFM metric files.
-AFMFONTS = .;$TEXMF/fonts/afm//;$OSFONTDIR//
+AFMFONTS = $TEXMFDOTDIR;$TEXMF/fonts/afm//;$OSFONTDIR//
% TrueType outline fonts.
-TTFONTS = .;$TEXMF/fonts/{truetype,opentype}//;$OSFONTDIR//
+TTFONTS = $TEXMFDOTDIR;$TEXMF/fonts/{truetype,opentype}//;$OSFONTDIR//
% OpenType outline fonts.
-OPENTYPEFONTS = .;$TEXMF/fonts/{opentype,truetype}//;$OSFONTDIR//
+OPENTYPEFONTS = $TEXMFDOTDIR;$TEXMF/fonts/{opentype,truetype}//;$OSFONTDIR//
% Type 42 outline fonts.
-T42FONTS = .;$TEXMF/fonts/type42//
+T42FONTS = $TEXMFDOTDIR;$TEXMF/fonts/type42//
% Ligature definition files.
-LIGFONTS = .;$TEXMF/fonts/lig//
+LIGFONTS = $TEXMFDOTDIR;$TEXMF/fonts/lig//
% Dvips' config.* files (this name should not start with `TEX'!).
TEXCONFIG = $TEXMF/dvips//
% Makeindex style (.ist) files.
-INDEXSTYLE = .;$TEXMF/makeindex//
+INDEXSTYLE = $TEXMFDOTDIR;$TEXMF/makeindex//
% mendex dictionary files. Used internally by mendex and upmendex.
% It is not necessary to introduce a new format in Kpathsea.
-INDEXDICTIONARY = .;$TEXMF/makeindex//
+INDEXDICTIONARY = $TEXMFDOTDIR;$TEXMF/makeindex//
% Font encoding files (.enc).
-ENCFONTS = .;$TEXMF/fonts/enc//
+ENCFONTS = $TEXMFDOTDIR;$TEXMF/fonts/enc//
% CMap files.
-CMAPFONTS = .;$TEXMF/fonts/cmap//
+CMAPFONTS = $TEXMFDOTDIR;$TEXMF/fonts/cmap//
% Subfont definition files.
-SFDFONTS = .;$TEXMF/fonts/sfd//
+SFDFONTS = $TEXMFDOTDIR;$TEXMF/fonts/sfd//
% OpenType feature files (.fea).
-FONTFEATURES=.;$TEXMF/fonts/fea//
+FONTFEATURES=$TEXMFDOTDIR;$TEXMF/fonts/fea//
% .cid and .cidmap
-FONTCIDMAPS=.;$TEXMF/fonts/cid//
+FONTCIDMAPS=$TEXMFDOTDIR;$TEXMF/fonts/cid//
% pdftex config files:
-PDFTEXCONFIG = .;$TEXMF/pdftex/{$progname,}//
+PDFTEXCONFIG = $TEXMFDOTDIR;$TEXMF/pdftex/{$progname,}//
% Used by DMP (ditroff-to-mpx), called by makempx -troff.
TRFONTS = /usr{/local,}/share/groff/{current/font,site-font}/devps
-MPSUPPORT = .;$TEXMF/metapost/support
+MPSUPPORT = $TEXMFDOTDIR;$TEXMF/metapost/support
% For xdvi to find mime.types and .mailcap, if they do not exist in
% ~. These are single directories, not paths.
@@ -419,28 +450,33 @@ FC_CACHEDIR = $TEXMFSYSVAR/fonts/cache
% TeX documentation and source files, for use with texdoc and kpsewhich.
TEXDOCS = $TEXMF/doc//
-TEXSOURCES = .;$TEXMF/source//
+TEXSOURCES = $TEXMFDOTDIR;$TEXMF/source//
+
+% Top-level directory for any string translations for the binaries, in
+% the same structure as the usual system locale/ directories. This is a
+% single directory, not a path.
+TEXMFLOCALEDIR = $TEXMFMAIN/locale
% Web and CWeb input paths.
-WEBINPUTS = .;$TEXMF/web//
-CWEBINPUTS = .;$TEXMF/cweb//
+WEBINPUTS = $TEXMFDOTDIR;$TEXMF/web//
+CWEBINPUTS = $TEXMFDOTDIR;$TEXMF/cweb//
% Omega-related fonts and other files.
-OFMFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/{ofm,tfm}//
-OPLFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/opl//
-OVFFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/{ovf,vf}//
-OVPFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/ovp//
-OTPINPUTS = .;$TEXMF/omega/otp//
-OCPINPUTS = .;$TEXMF/omega/ocp//
+OFMFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/{ofm,tfm}//
+OPLFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/opl//
+OVFFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/{ovf,vf}//
+OVPFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/ovp//
+OTPINPUTS = $TEXMFDOTDIR;$TEXMF/omega/otp//
+OCPINPUTS = $TEXMFDOTDIR;$TEXMF/omega/ocp//
% Some additional input variables for several programs. If you add
% a program that uses the `other text files' or `other binary files'
% search formats, you'll want to add their variables here as well.
-T4HTINPUTS = .;$TEXMF/tex4ht//
+T4HTINPUTS = $TEXMFDOTDIR;$TEXMF/tex4ht//
%% t4ht utility, sharing files with TeX4ht
TEX4HTFONTSET=alias,iso8859,unicode
-TEX4HTINPUTS = .;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}//
+TEX4HTINPUTS = $TEXMFDOTDIR;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}//
% TeXworks editor configuration and settings
TW_LIBPATH = $TEXMFCONFIG/texworks
@@ -455,26 +491,36 @@ DVIPDFMXINPUTS = $TEXMF/dvipdfmx
% But we can't simply use $TEXINPUTS, since then if TEXINPUTS is set in
% the environment with a colon, say, TEXINPUTS=/some/dir:, the intended
% default expansion of TEXINPUTS will not happen and .lua files under
-% the /tex/ will not be found.
+% the /tex/ tree will not be found.
%
% So, duplicate the TEXINPUTS.*lualatex values as LUAINPUTS.*lualatex.
% The default LUAINPUTS suffices for luatex and dviluatex.
%
-LUAINPUTS.lualatex = .;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
-LUAINPUTS.dvilualatex = .;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
-LUAINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{luatex,plain,generic,}//
+LUAINPUTS.lualatex = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
+LUAINPUTS.lualatex-dev = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{latex-dev,lualatex,latex,luatex,generic,}//
+%
+LUAINPUTS.luahblatex = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{luahblatex,luahbtex,lualatex,latex,luatex,generic,}//
+LUAINPUTS.luahblatex-dev = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{latex-dev,luahblatex,luahbtex,lualatex,latex,luatex,generic,}//
+%
+LUAINPUTS.dvilualatex = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
+LUAINPUTS.dvilualatex-dev = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{latex-dev,lualatex,latex,luatex,generic,}//
+%
+LUAINPUTS.harflatex = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{harflatex,harftex,lualatex,latex,luatex,generic,}//
+LUAINPUTS.harflatex-dev = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{latex-dev,harflatex,harftex,lualatex,latex,luatex,generic,}//
+%
+LUAINPUTS = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/{lua,}//;$TEXMF/tex/{luatex,plain,generic,latex,}//
% Lua needs to look for binary lua libraries distributed with packages.
-CLUAINPUTS = .;$SELFAUTOLOC/lib/{$progname,$engine,}/lua//
+CLUAINPUTS = $TEXMFDOTDIR;$SELFAUTOLOC/lib/{$progname,$engine,}/lua//
% Architecture independent executables.
TEXMFSCRIPTS = $TEXMF/scripts/{$progname,$engine,}//
% Other languages.
-JAVAINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/java//
-PERLINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/perl//
-PYTHONINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/python//
-RUBYINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/ruby//
+JAVAINPUTS = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/java//
+PERLINPUTS = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/perl//
+PYTHONINPUTS = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/python//
+RUBYINPUTS = $TEXMFDOTDIR;$TEXMF/scripts/{$progname,$engine,}/ruby//
%% The mktex* scripts rely on KPSE_DOT. Do not set it in the environment.
@@ -591,6 +637,7 @@ gregorio,\
kpsewhich,\
makeindex,\
repstopdf,\
+r-mpost,\
texosquery-jre8,\
% we'd like to allow:
@@ -649,6 +696,12 @@ parse_first_line = t
parse_first_line.tex = f
parse_first_line.initex = f
+% Normally we mention files created by \openout in the log file,
+% but again, trip-compatibility forbids this for (ini)tex.
+log_openout = t
+log_openout.tex = f
+log_openout.initex = f
+
% Control file:line:error style messages.
file_line_error_style = f
@@ -711,9 +764,7 @@ texmf_casefold_search = 1
% Part 3: Array and other sizes for TeX, Metafont, etc.
%
% If you want to change some of these sizes only for a certain TeX
-% variant, the usual dot notation works, e.g.,
-% main_memory.hugetex = 20000000
-%
+% variant, the usual dot notation works, as shown below for ConTeXt.
% If a change here appears to be ignored, try redumping the format file.
% Memory. Must be less than 8,000,000 total.
@@ -756,8 +807,10 @@ pool_size = 6250000
string_vacancies = 90000
% Maximum number of strings.
max_strings = 500000
-% min pool space left after loading .fmt
+% Min pool space left after loading .fmt.
pool_free = 47500
+% Ensure at least this many strings are free after loading .fmt.
+strings_free = 100
% Buffer size. TeX uses the buffer to contain input lines, but macro
% expansion works by writing material into the buffer and reparsing the
@@ -770,22 +823,32 @@ buf_size = 200000
% for all known free hyphenation patterns to be loaded simultaneously
% (as TeX Live does).
%
-trie_size = 1000000
+trie_size = 1100000
-hyph_size = 8191 % prime number of hyphenation exceptions, >610, <32767.
+hyph_size = 8191 % prime number of hyphenation exceptions, >610, <65535
% http://primes.utm.edu/curios/page.php/8191.html
+ % dynamically increased as necessary, so not important.
nest_size = 500 % simultaneous semantic levels (e.g., groups)
max_in_open = 15 % simultaneous input files and error insertions,
% also applies to MetaPost
param_size = 10000 % simultaneous macro parameters, also applies to MP
-save_size = 100000 % for saving values outside current group
+save_size = 80000 % for saving values outside current group
stack_size = 5000 % simultaneous input sources
+% Limit on recursive expansion calls so TeX has a chance to quit nicely
+% before stack space runs out. The default is 10000. Normally there is no
+% reason to change it. The web2c manual has a bit more about this.
+%expand_depth = 10000
+
% These are Omega-specific.
ocp_buf_size = 500000 % character buffers for ocp filters.
ocp_stack_size = 10000 % stacks for ocp computations.
ocp_list_size = 1000 % control for multiple ocps.
+% For pdftex and luatex: default resolution for bitmaps;
+% commonly set via \pdfpkresolution when needed to be changed.
+%pk_dpi = 72
+
% These work best if they are the same as the I/O buffer size, but it
% doesn't matter much. Must be a multiple of 8.
dvi_buf_size = 16384 % TeX
@@ -805,13 +868,13 @@ screen_width.mf = 1664
screen_depth.mf = 1200
% BibTeX only (max_strings also determines hash_size and hash_prime).
-ent_str_size = 250
-glob_str_size = 20000
-max_strings.bibtex = 100000
-max_strings.bibtex8 = 100000
-max_strings.bibtexu = 100000
-max_strings.pbibtex = 100000
-max_strings.upbibtex = 100000
+ent_str_size = 500
+glob_str_size = 200000
+max_strings.bibtex = 200000
+max_strings.bibtex8 = 200000
+max_strings.bibtexu = 200000
+max_strings.pbibtex = 200000
+max_strings.upbibtex= 200000
% GFtype only.
line_length.gftype = 500
@@ -821,3 +884,23 @@ max_cols.gftype = 8191
% Guess input encoding (SJIS vs. Unicode, etc.) in pTeX and friends?
% Default is 1, to guess. Used on Windows only.
guess_input_kanji_encoding = 1
+
+% command_line_encoding
+%
+% This variable is used on Windows only, and affects 4 TeX engines:
+% uptex, euptex, pdftex, xetex, and 2 drivers: dvips, [x]dvipdfmx.
+% Several applications also are affected by the variable:
+% dvi2tty.exe, disdvi.exe, dvibook.exe, dviconcat.exe, dviselect.exe,
+% dvitodvi.exe, and dvidvi.exe.
+% Only values utf8 or utf-8 are meaningful. Other values are simply
+% ignored. If file names in sources and DVI or XDV files are ASCII
+% only, the value of command_line_encoding is irrelevant.
+% If command_line_encoding = utf8 or command_line_encoding = utf-8,
+% file names in sources and DVI or XDV files are assumed to be UTF-8.
+% Default is utf-8, from 2019-07-24, to assume UTF-8 file names.
+% In order to switch off the function, define an environment variable:
+% set command_line_encoding=none
+% or write a line:
+% command_line_encoding = none
+% in a texmf.cnf prefered, for example $TEXMFLOCAL/web2c/texmf.cnf.
+command_line_encoding = utf-8