%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Usually you will not need to edit any of the following variables.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% WEB2C is for Web2C specific files.  The current directory may not be
% a good place to look for them.
WEB2C = $TEXMF/web2c

% 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,}//

% Fontinst needs to read afm files.
TEXINPUTS.fontinst      = .;$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
% 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,}//

% 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,}//

% e-TeX.
TEXINPUTS.elatex        = .;$TEXMF/tex/{latex,generic,}//
TEXINPUTS.etex          = .;$TEXMF/tex/{plain,generic,}//

% 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,}//

% pdfeTeX.
TEXINPUTS.pdfelatex     = .;$TEXMF/tex/{latex,generic,}//
TEXINPUTS.pdfetex       = .;$TEXMF/tex/{plain,generic,}//

% LuaTeX.
TEXINPUTS.lualatex      = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
TEXINPUTS.dvilualatex   = .;$TEXMF/tex/{lualatex,latex,luatex,generic,}//
TEXINPUTS.luatex        = .;$TEXMF/tex/{luatex,plain,generic,}//
TEXINPUTS.luajittex     = .;$TEXMF/tex/{luatex,plain,generic,}//
TEXINPUTS.dviluatex     = .;$TEXMF/tex/{luatex,plain,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,}//

% 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,}//

% p(La)TeX.
TEXINPUTS.ptex          = .;$TEXMF/tex/{ptex,plain,generic,}//
TEXINPUTS.platex        = .;$TEXMF/tex/{platex,latex,generic,}//

% epTeX, and for pmpost.
TEXINPUTS.eptex         = .;$TEXMF/tex/{ptex,plain,generic,}//
TEX.pmpost = eptex

% (e)up(La)TeX.
TEXINPUTS.uplatex = .;$TEXMF/tex/{uplatex,platex,latex,generic,}//
TEXINPUTS.uptex   = .;$TEXMF/tex/{uptex,ptex,plain,generic,}//
TEXINPUTS.euptex  = .;$TEXMF/tex/{uptex,ptex,plain,generic}//

% pBibTeX bibliographies and style files.
BIBINPUTS.pbibtex       = .;$TEXMF/{pbibtex,bibtex}/bib//
BSTINPUTS.pbibtex       = .;$TEXMF/{pbibtex,bibtex}/bst//

% ConTeXt.
TEXINPUTS.context       = .;$TEXMF/tex/{context,plain,generic}//

% jadetex.
TEXINPUTS.jadetex       = .;$TEXMF/tex/{jadetex,latex,generic,}//
TEXINPUTS.pdfjadetex    = .;$TEXMF/tex/{jadetex,latex,generic,}//

% XMLTeX.
TEXINPUTS.xmltex        = .;$TEXMF/tex/{xmltex,latex,generic,}//
TEXINPUTS.pdfxmltex     = .;$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,}//

% Earlier entries override later ones, so put this generic one last.
TEXINPUTS               = .;$TEXMF/tex/{$progname,generic,}//

% ttf2tfm.
TTF2TFMINPUTS =                 .;$TEXMF/ttf2pk//

% Metafont, MetaPost inputs.
MFINPUTS = .;$TEXMF/metafont//;{$TEXMF/fonts,$GLOBALVARTEXFONTS,$VARTEXFONTS}/source//
MPINPUTS = .;$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
% exist under both pdftex/ and xetex/.  But just in case some formats
% end up without an engine directory, look directly in web2c/ too.
% 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,}
%
% 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
MFPOOL = ${TEXPOOL}
MPPOOL = ${TEXPOOL}

% support the original xdvi.  Must come before the generic settings.
PKFONTS.XDvi   = .;$TEXMF/%s;{$GLOBALVARTEXFONTS,$VARTEXFONTS}/pk/{%m,modeless}//
VFFONTS.XDvi   = .;$TEXMF/%s
PSHEADERS.XDvi = .;$TEXMF/%q{dvips,fonts/type1}//
TEXPICTS.XDvi  = .;$TEXMF/%q{dvips,tex}//

% Device-independent font metric files.
VFFONTS = .;$TEXMF/fonts/vf//
TFMFONTS = .;{$TEXMF/fonts,$GLOBALVARTEXFONTS,$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,$GLOBALVARTEXFONTS,$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//

% A backup for PKFONTS and GFFONTS. Not used for anything.
GLYPHFONTS = .;$TEXMF/fonts

% A place to puth everything that doesn't fit the other font categories.
MISCFONTS = .;$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,}//

% BibTeX bibliographies and style files.  bibtex8 also uses these.
BIBINPUTS = .;$TEXMF/bibtex/bib//
BSTINPUTS = .;$TEXMF/bibtex/{bst,csf}//

% MlBibTeX.
MLBIBINPUTS = .;$TEXMF/bibtex/bib/{mlbib,}//
MLBSTINPUTS = .;$TEXMF/bibtex/{mlbst,bst}//

% .ris and .bltxml bibliography formats.
RISINPUTS = .;$TEXMF/bibtex/ris//
BLTXMLINPUTS = .;$TEXMF/bibtex/bltxml//

% MFT style files.
MFTINPUTS = .;$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}}//

% OSFONTDIR is to provide a convenient hook for allowing TeX to find
% fonts installed on the system (outside of TeX).  An empty default
% value would add "//" to the search paths, so we give it a dummy value.
OSFONTDIR = /please/set/osfontdir/in/the/environment

% PostScript Type 1 outline fonts.
T1FONTS = .;$TEXMF/fonts/type1//;$OSFONTDIR//

% PostScript AFM metric files.
AFMFONTS = .;$TEXMF/fonts/afm//;$OSFONTDIR//

% TrueType outline fonts.
TTFONTS = .;$TEXMF/fonts/{truetype,opentype}//;$OSFONTDIR//

% OpenType outline fonts.
OPENTYPEFONTS = .;$TEXMF/fonts/{opentype,truetype}//;$OSFONTDIR//

% Type 42 outline fonts.
T42FONTS = .;$TEXMF/fonts/type42//

% Ligature definition files.
LIGFONTS =  .;$TEXMF/fonts/lig//

% Dvips' config.* files (this name should not start with `TEX'!).
TEXCONFIG = $TEXMF/dvips//

% Makeindex style (.ist) files.
INDEXSTYLE = .;$TEXMF/makeindex//

% Font encoding files (.enc).
ENCFONTS = .;$TEXMF/fonts/enc//

% CMap files.
CMAPFONTS = .;$TEXMF/fonts/cmap//

% Subfont definition files.
SFDFONTS = .;$TEXMF/fonts/sfd//

% OpenType feature files (.fea).
FONTFEATURES=.;$TEXMF/fonts/fea//

% .cid and .cidmap
FONTCIDMAPS=.;$TEXMF/fonts/cid//

% pdftex config files:
PDFTEXCONFIG = .;$TEXMF/pdftex/{$progname,}//

% Used by DMP (ditroff-to-mpx), called by makempx -troff.
TRFONTS = $SELFAUTODIR{/local,}/share/groff/{current/font,site-font}/devps
MPSUPPORT = .;$TEXMF/metapost/support

% For xdvi to find mime.types and .mailcap, if they do not exist in
% ~.  These are single directories, not paths.
% (But the default mime.types, at least, may well suffice.)
MIMELIBDIR = $SELFAUTOPARENT/etc
MAILCAPLIBDIR = $SELFAUTOPARENT/etc

% Default settings for the fontconfig library as used by the Windows
% versions of xetex/xdvipdfmx.  Not used by xetex on Unixish systems.
% ConTeXT MkIV (all platforms) also use these values.
% 
FONTCONFIG_FILE = fonts.conf
FONTCONFIG_PATH = $TEXMFSYSVAR/fonts/conf
FC_CACHEDIR = $TEXMFSYSVAR/fonts/cache

% TeX documentation and source files, for use with texdoc and kpsewhich.
TEXDOCS = $TEXMF/doc//
TEXSOURCES = .;$TEXMF/source//

% Web and CWeb input paths.
WEBINPUTS = .;$TEXMF/web//
CWEBINPUTS = .;$TEXMF/cweb//

% Omega-related fonts and other files.
OFMFONTS = .;{$TEXMF/fonts,$GLOBALVARTEXFONTS,$VARTEXFONTS}/{ofm,tfm}//
OPLFONTS = .;{$TEXMF/fonts,$GLOBALVARTEXFONTS,$VARTEXFONTS}/opl//
OVFFONTS = .;{$TEXMF/fonts,$GLOBALVARTEXFONTS,$VARTEXFONTS}/{ovf,vf}//
OVPFONTS = .;{$TEXMF/fonts,$GLOBALVARTEXFONTS,$VARTEXFONTS}/ovp//
OTPINPUTS = .;$TEXMF/omega/otp//
OCPINPUTS = .;$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//

%% t4ht utility, sharing files with TeX4ht
TEX4HTFONTSET=alias,iso8859,unicode
TEX4HTINPUTS = .;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}//

% TeXworks editor configuration and settings
TW_LIBPATH = $TEXMFCONFIG/texworks
TW_INIPATH = $TW_LIBPATH

% For security, do not look in . for dvipdfmx.cfg, since the D option
% would allow command execution.
DVIPDFMXINPUTS = $TEXMF/dvipdfmx

% Lua needs to look in TEXINPUTS for lua scripts distributed with packages.
% 
% 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.
% 
% 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,}//

% Lua needs to look for binary lua libraries distributed with packages.
CLUAINPUTS = .;$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//


%% The mktex* scripts rely on KPSE_DOT. Do not set it in the environment.
% KPSE_DOT = .

% This definition isn't used from this .cnf file itself (that would be
% paradoxical), but the compile-time default in paths.h is built from it.
% The SELFAUTO* variables are set automatically from the location of
% argv[0], in kpse_set_program_name.
% 
% This main texmf.cnf file is installed, for a release YYYY, in a
% directory such as /usr/local/texlive/YYYY/texmf-dist/web2c/texmf.cnf.
% Since this file is subject to future updates, the TeX Live installer
% or human administrator may also create a file
% /usr/local/texlive/YYYY/texmf.cnf; any settings in this latter file
% will take precedence over the distributed one.
% 
% For security reasons, it is best not to include . in this path.
%
% The idea behind this lengthy definition: for each of
% SELFAUTO{LOC,DIR,PARENT}, look in the directory,
% then the subdirectories share/texmf-local, share/texmf-dist, share/texmf,
% then the subdirectories ./texmf-local, texmf-dist, ./texmf.
% At any given installation, most of these directories will not exist,
% but they all turn out to be useful somewhere.
% 
% Special addition -- we want to include one more directory: the
% great-grandparent's texmf-local, because that is how TL is installed
% by default.  That is, given a binary
% /usr/local/texlive/YYYY/bin/PLATFORM/kpsewhich, it should find
% /usr/local/texlive/texmf-local/web2c/texmf.cnf.  I.e., not under YYYY.
% 
% As a result, we cannot use actual brace expansion in the definition,
% since we don't want to scatter ../'s throughout the value.  Hence we
% explicitly list every directory.  Arguably more understandable anyway.
%
TEXMFCNF = {\
$SELFAUTODIR/share/texmf-dist/web2c,\
$SELFAUTODIR/share/texmf/web2c,\
$SELFAUTODIR/local/share/texmf/web2c,\
$SELFAUTOPARENT/etc/texmf/web2c\
}
%
% For reference, here is the old brace-using definition:
%TEXMFCNF = {$SELFAUTOLOC,$SELFAUTODIR,$SELFAUTOPARENT}{,{/share,}/texmf{-local,}/web2c}

% kpathsea 3.5.3 and later sets these at runtime. To avoid empty
% expansions from binaries linked against an earlier version of the
% library, we set $progname and $engine to something non-empty:
progname = unsetprogname
engine = unsetengine



