% texmf.cnf -- runtime path configuration file for kpathsea. % Public domain. % % What follows is a super-summary of what this .cnf file can % contain. Please read the Kpathsea manual for more information. % % Any identifier (sticking to A-Za-z_ for names is safest) can be assigned. % The `=' (and surrounding spaces) is optional. % $foo (or ${foo}) in a value expands to the envvar or cnf value of foo. % Long lines can be continued with a \. % % Earlier entries (in the same or another file) override later ones, and % an environment variable foo overrides any texmf.cnf definition of foo. % % All definitions are read before anything is expanded, so you can use % variables before they are defined. % % If a variable assignment is qualified with `.PROGRAM', it is ignored % unless the current executable (last filename component of argv[0]) is % named PROGRAM. This foo.PROGRAM construct is not recognized on the % right-hand side. For environment variables, use FOO_PROGRAM. % % Which file formats use which paths for searches is described in the % various programs' and the Kpathsea documentation (http://tug.org/kpathsea). % % // means to search subdirectories (recursively). % A leading !! means to look only in the ls-R db, never on the disk. % In this file, either ; or : can be used to separate path components. % A leading/trailing/doubled path separator in the paths will be % expanded into the compile-time default. Probably not what you want. % % Brace notation is supported, for example: /usr/local/{mytex,othertex} % expands to /usr/local/mytex:/usr/local/othertex. You can use the path % separator as well as the comma for this: /usr/local/{mytex:othertex} % also expands to /usr/local/mytex:/usr/local/othertex. We make % extensive use of this. % Part 1: Search paths and directories. % You can set an environment variable to override TEXMF if you're testing % a new TeX tree, without changing anything else. % % You may wish to use one of the $SELFAUTO... variables here so TeX will % find where to look dynamically. See the manual and the definition % below of TEXMFCNF. % The tree containing the runtime files closely related to the specific % program version used: TEXMFMAIN = /usr/share/texmf % The main distribution tree: TEXMFDIST = /usr/share/texmf-dist % Our documentation-only tree, arranged by language: TEXMFDOC = /usr/share/texmf-doc % A place for local additions to a "standard" texmf tree. % This tree is not used for local configuration maintained by % texconfig, it uses TEXMFCONFIG below. TEXMFLOCAL = /usr/local/share/texmf % TEXMFSYSVAR, where texconfig-sys stores variable runtime data. % With teTeX-3.0 or later, this must be set. % For sharing this tree with $TEXMFMAIN: % TEXMFSYSVAR = $TEXMFMAIN % For using a separate tree: % TEXMFSYSVAR = /usr/share/texmf-var TEXMFSYSVAR = /usr/share/texmf-var % TEXMFSYSCONFIG, where texconfig-sys stores configuration data. % With teTeX-3.0 or later, this must be set. % For sharing this tree with $TEXMFMAIN: % TEXMFSYSCONFIG = $TEXMFMAIN % For using a separate tree: % TEXMFSYSCONFIG = /usr/share/texmf-config TEXMFSYSCONFIG = /usr/share/texmf-config % User texmf trees are allowed as follows. % This used to be HOMETEXMF. TEXMFHOME = ~/texmf % TEXMFVAR, where texconfig stores variable runtime data. % With teTeX-3.0 or later, this must be set. % For sharing this tree with $TEXMFMAIN: % TEXMFVAR = $TEXMFMAIN % For using a separate tree: % TEXMFVAR = ~/.texmf-var # teTeX 3.0 default TEXMFVAR = ~/.texlive/texmf-var % TEXMFCONFIG, where texconfig stores configuration data. % With teTeX-3.0 or later, this must be set. % For sharing this tree with $TEXMFMAIN: % TEXMFCONFIG = $TEXMFMAIN % For using a separate tree: % TEXMFCONFIG = ~/.texmf-config # teTeX 3.0 default % For using a separate tree: % TEXMFCONFIG = /usr/share/texmf-config TEXMFCONFIG = ~/.texlive/texmf-config % Now, list all the texmf trees. If you have multiple trees you can % use shell brace notation, like this: % TEXMF = {$TEXMFHOME,!!$TEXMFLOCAL,!!$TEXMFMAIN} % The braces are necessary. % % For texconfig to work properly, TEXMFCONFIG and TEXMFVAR should be named % explicitly and before all other trees. % % TEXMFLOCAL follows TEXMFMAIN (and precedes TEXMFDIST) because the only % files in TEXMFMAIN are tightly coupled with the particular version of % the distribution, such as format files. Overriding them would be more % likely to cause trouble than help. On the other hand, all the % standard packages and fonts are in TEXMFDIST, and locally-installed % versions should take precedence over those (although it is generally a % source of confusion to have different versions of a package installed, % whatever the trees, so try to avoid it). TEXMF = {$TEXMFCONFIG,$TEXMFVAR,$TEXMFHOME,!!$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFMAIN,!!$TEXMFLOCAL,!!$TEXMFDIST} % The system trees. These are the trees that are shared by all the users. % If a tree appears in this list, the mktex* scripts will use % VARTEXFONTS for generated files, if the original tree isn't writable; % otherwise the current working directory is used. SYSTEXMF = $TEXMFSYSVAR;$TEXMFMAIN;$TEXMFLOCAL;$TEXMFDIST % Where generated fonts may be written. This tree is used when the sources % were found in a system tree and either that tree wasn't writable, or the % varfonts feature was enabled in MT_FEATURES in mktex.cnf. VARTEXFONTS = $TEXMFVAR/fonts % 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. % TEXMFDBS = {!!$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFMAIN,!!$TEXMFLOCAL,!!$TEXMFDIST} % On some systems, there will be a system tree which contains all the font % files that may be created as well as the formats. For example % TEXMFVAR = /var/lib/texmf % is used in many distros. In this case, set VARTEXFONTS like this % VARTEXFONTS = $TEXMFVAR/fonts % and do not mention it in TEXMFDBS (but _do_ mention TEXMFVAR). % % Remove $VARTEXFONTS from TEXMFDBS if the VARTEXFONTS directory is below % one of the TEXMF directories (avoids overlapping ls-R files). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % 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,}// % pdfxTeX. TEXINPUTS.pdfxlatex = .;$TEXMF/tex/{latex,generic,}// TEXINPUTS.pdfxmex = .;$TEXMF/tex/{mex,plain,generic,}// TEXINPUTS.pdfxtex = .;$TEXMF/tex/{plain,generic,}// % LuaTeX. TEXINPUTS.lualatex = .;$TEXMF/tex/{lualatex,latex,generic,}// TEXINPUTS.luatex = .;$TEXMF/tex/{luatex,plain,generic,}// TEXINPUTS.pdflualatex = .;$TEXMF/tex/{lualatex,latex,generic,}// TEXINPUTS.pdfluatex = .;$TEXMF/tex/{luatex,plain,generic,}// % XeTeX. TEXINPUTS.xelatex = .;$TEXMF/tex/{xelatex,latex,generic,}// TEXINPUTS.xeplain = .;$TEXMF/tex/{xeplain,eplain,plain,generic,}// TEXINPUTS.xetex = .;$TEXMF/tex/{xetex,plain,generic,}// % 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,$VARTEXFONTS}/source// MPINPUTS = .;$TEXMF/metapost// % The following are not needed any more here. % Moved to texdoc.cnf (and hard-coded default), see the texdoc manual. % See texdoc's source too if you need to allow compressed documentation. % TEXDOCSSUFFIX = ;.pdf;.ps;.dvi;.html;.txt;.tex % TEXDOCSCOMPRESS = ;.gz;.bz2;.zip;.Z % TEXDOCEXT = {$TEXDOCSSUFFIX}{$TEXDOCSCOMPRESS} % 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;$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,$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}// % 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}// % 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 = /usr/share/fonts % 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//;$OSFONTDIR// % Opentype outline fonts. OPENTYPEFONTS = .;$TEXMF/fonts/opentype//;$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 outline fonts. OPENTYPEFONTS = .;$TEXMF/fonts/opentype// % 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 = /usr{/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 = /etc MAILCAPLIBDIR = /etc % Default settings for fontconfig library, used by Windows versions of % xetex/xdvipdfmx. On Unixish systems, fontconfig ignores this. FONTCONFIG_FILE=fonts.conf FONTCONFIG_PATH=$TEXMFSYSVAR/fonts/conf FC_CACHEDIR=$TEXMFSYSVAR/fonts/cache % TeX documentation and source files, for use with kpsewhich (and texdoc). % Find non-man pages first, better than random in case of conflict. TEXDOCS = .;$TEXMF/doc{,/man}// TEXSOURCES = .;$TEXMF/source// % Web and CWeb input paths. WEBINPUTS = .;$TEXMF/web// CWEBINPUTS = .;$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// % 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}// % Find scripts that are distributed/installed in the texmf tree. % Lua needs to look in TEXINPUTS for lua scripts distributed with packages. LUAINPUTS = .;$TEXMF/scripts/{$progname,$engine,}/lua//;$TEXINPUTS % Architecture independent executables. TEXMFSCRIPTS = $TEXMF/scripts/{$engine,$progname,}// % 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/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 under texmf/web2c. % % For security reasons, it is better not to include . in this path. % TEXMFCNF = {$SELFAUTOLOC,$SELFAUTODIR,/usr}{,{/share,/local/share,}/texmf/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 % Part 2: Options. % If this option is set to true, `tex a.b' will look first for a.b.tex % (within each path element), and then for a.b, i.e., we try standard % extensions first. If this is false, we first look for a.b and then % a.b.tex, i.e., we try the name as-is first. % % Both names are always tried; the difference is the order in which they % are tried. The setting applies to all searches, not just .tex. % % This setting only affects names being looked up which *already* have % an extension. A name without an extension (e.g., `tex story') will % always have an extension added first. % % The default is true, because we already avoid adding the standard % extension(s) in the usual cases. E.g., babel.sty will only look for % babel.sty, not babel.sty.tex, regardless of this setting. try_std_extension_first = t % Enable system commands via \write18{...}. When enabled fully (set to % 1), obviously insecure. When enabled partially (set to p), only the % commands listed in shell_escape_commands are allowed. Although this % is not fully secure either, it is much better, and so useful that we % enable it for everything but bare tex. shell_escape = p % Special: convert is the standard command name for ImageMagick, but it % is also the name of a dangerous filesystem-changing command on % Windows. So enable imgconvert (used in w32tex), but not convert. % No spaces in this command list. shell_escape_commands = \ bibtex,bibtex8,epstopdf,epspdf,fc-match,\ kpsewhich,makeindex,\ ps2pdf,pstopdf,pygmentize,\ rpdfcrop,\ % we'd like to allow: % dvips - but external commands can be executed, need at least -R1. % (img)convert (ImageMagick) - delegates.mgk possible misconfig, besides, % without Unix convert it hardly seems worth it, and Windows convert % is something completely different that destroys filesystems, so % skip it. % pygmentize - but is the filter feature insecure? % ps4pdf - but it calls an unrestricted latex. % texindy,xindy - but is the module feature insecure? % ulqda - but requires optional SHA1.pm, so why bother. % plain TeX should remain unenhanced. shell_escape.tex = f % Allow TeX \openin, \openout, or \input on filenames starting with `.' % (e.g., .rhosts) or outside the current tree (e.g., /etc/passwd)? % a (any) : any file can be opened. % r (restricted) : disallow opening "dotfiles". % p (paranoid) : as `r' and disallow going to parent directories, and % restrict absolute paths to be under $TEXMFOUTPUT. openout_any = p openin_any = a % Write .log/.dvi/etc. files here, if the current directory is unwritable. % TEXMFOUTPUT = /tmp % If a dynamic file creation fails, log the command to this file, in % either the current directory or TEXMFOUTPUT. Set to the % empty string or 0 to avoid logging. MISSFONT_LOG = missfont.log % Set to a colon-separated list of words specifying warnings to suppress. % To suppress everything, use TEX_HUSH = all; this is currently equivalent to % TEX_HUSH = checksum:lostchar:readable:special % To suppress nothing, use TEX_HUSH = none or do not set the variable at all. TEX_HUSH = none % Allow TeX, and MF to parse the first line of an input file for % the %&format construct. parse_first_line = t % But don't parse the first line if invoked as "tex", since we want that % to remain Knuth-compatible. The src_specials and % file_line_error_style settings, as well as the options -enctex, % -mltex, -8bit, etc., also affect this, but they are all off by default. parse_first_line.tex = f % Control file:line:error style messages. file_line_error_style = f % Enable the mktex... scripts by default? These must be set to 0 or 1. % Particular programs can and do override these settings, for example % dvips's -M option. Your first chance to specify whether the scripts % are invoked by default is at configure time. % % These values are ignored if the script names are changed; e.g., if you % set DVIPSMAKEPK to `foo', what counts is the value of the environment % variable/config value `FOO', not the `MKTEXPK' value. % % MKTEXTEX = 0 % MKTEXPK = 0 % MKTEXMF = 0 % MKTEXTFM = 0 % MKTEXFMT = 0 % MKOCP = 0 % MKOFM = 0 % Used by makempx to run TeX. We use "etex" because MetaPost is % expecting DVI, and not "tex" because we want first line parsing. TEX = etex % These variables specify the external program called for the % interactive `e' option. %d is replaced by the line number and %s by % the current filename. The default is specified at compile-time, and % we let that stay in place since different platforms like different values. %TEXEDIT = vi +%d "%s" %MFEDIT = ${TEXEDIT} %MPEDIT = ${TEXEDIT} % Part 3: Array and other sizes for TeX (and Metafont). % % 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 % % If a change here appears to be ignored, try redumping the format file. % Memory. Must be less than 8,000,000 total. % % main_memory is relevant only to initex, extra_mem_* only to non-ini. % Thus, have to redump the .fmt file after changing main_memory; to add % to existing fmt files, increase extra_mem_*. (To get an idea of how % much, try \tracingstats=2 in your TeX source file; % web2c/tests/memtest.tex might also be interesting.) % % To increase space for boxes (as might be needed by, e.g., PiCTeX), % increase extra_mem_bot. % % For some xy-pic samples, you may need as much as 700000 words of memory. % For the vast majority of documents, 60000 or less will do. % main_memory = 3000000 % words of inimemory available; also applies to inimf&mp extra_mem_top = 0 % extra high memory for chars, tokens, etc. extra_mem_bot = 0 % extra low memory for boxes, glue, breakpoints, etc. % ConTeXt needs lots of memory. extra_mem_top.context = 2000000 extra_mem_bot.context = 4000000 % Words of font info for TeX (total size of all TFM files, approximately). % Must be >= 20000 and <= 4000000 (without tex.ch changes). font_mem_size = 3000000 % Total number of fonts. Must be >= 50 and <= 9000 (without tex.ch changes). font_max = 9000 % Extra space for the hash table of control sequences. hash_extra = 200000 % Max number of characters in all strings, including all error messages, % help texts, font names, control sequences. These values apply to TeX. pool_size = 3250000 % Minimum pool space after TeX's own strings; must be at least % 25000 less than pool_size, but doesn't need to be nearly that large. string_vacancies = 90000 % Maximum number of strings. max_strings = 500000 % min pool space left after loading .fmt pool_free = 47500 % Buffer size. TeX uses the buffer to contain input lines, but macro % expansion works by writing material into the buffer and reparsing the % line. As a consequence, certain constructs require the buffer to be % very large, even though most documents can be handled with a small value. buf_size = 200000 % Hyphenation trie. The maximum possible is 4194303 (ssup_trie_size in % the sources), but we don't need that much. The value here suffices % for all known free hyphenation patterns to be loaded simultaneously % (as TeX Live does). % trie_size = 700000 hyph_size = 8191 % prime number of hyphenation exceptions, >610, <32767. % http://primes.utm.edu/curios/page.php/8191.html 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 = 50000 % for saving values outside current group stack_size = 5000 % simultaneous input sources % 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 gf_buf_size = 16384 % MF % It's probably inadvisable to change these. At any rate, we must have: % 45 < error_line < 255; % 30 < half_error_line < error_line - 15; % 60 <= max_print_line; % These apply to TeX, Metafont, and MetaPost. error_line = 79 half_error_line = 50 max_print_line = 79