1 % TeX Live texmf.cnf 2 % What follows is a super-summary of what this .cnf file can 3 % contain. Please read the Kpathsea manual for more information. 4 % 5 % texmf.cnf is generated from texmf.in, by replacing @var@ with the 6 % value of the Make variable ‘var', via a sed file texmf.sed, generated 7 % (once) by kpathsea/Makefile (itself generated from kpathsea/Makefile.in 8 % by configure). 9 % 10 % Any identifier (sticking to A-Za-z_ for names is safest) can be assigned. 11 % The ‘=' (and surrounding spaces) is optional. 12 % No % or @ in texmf.in, for the sake of autogeneration. 13 % (However, %'s and @'s can be edited into texmf.cnf or put in envvar values.) 14 % $foo (or ${foo}) in a value expands to the envvar or cnf value of foo. 15 % 16 % Earlier entries (in the same or another file) override later ones, and 17 % an environment variable foo overrides any texmf.cnf definition of foo. 18 % 19 % All definitions are read before anything is expanded, so you can use 20 % variables before they are defined. 21 % 22 % If a variable assignment is qualified with ‘.PROGRAM', it is ignored 23 % unless the current executable (last filename component of argv[0]) is 24 % named PROGRAM. This foo.PROGRAM construct is not recognized on the 25 % right-hand side. For environment variables, use FOO_PROGRAM. 26 % 27 % Which file formats use which paths for searches is described in the 28 % various programs' and the kpathsea documentation. 29 % 30 % // means to search subdirectories (recursively). 31 % A leading !! means to look only in the ls-R db, never on the disk. 32 % A leading/trailing/doubled ; in the paths will be expanded into the 33 % compile-time default. Probably not what you want. 34 % 35 % You can use brace notation, for example: /usr/local/{mytex:othertex} 36 % expands to /usr/local/mytex:/usr/local/othertex. Instead of the path 37 % separator you can use a comma: /usr/local/{mytex,othertex} also expands 38 % to /usr/local/mytex:/usr/local/othertex. However, the use of the comma 39 % instead of the path separator is deprecated. 40 % 41 % The text above assumes thet path separator is a colon (:). Non-UNIX 42 % systems use different path separators, like the semicolon (;). 43 44 % Part 1: Search paths and directories. 45 46 % You can set an environment variable to override TEXMF if you're testing 47 % a new TeX tree, without changing anything else. 48 % 49 % You may wish to use one of the $SELFAUTO... variables here so TeX will 50 % find where to look dynamically. See the manual and the definition 51 % below of TEXMFCNF. 52 53 % The main tree, which must be mentioned in $TEXMF, below: 54 TEXMFMAIN = $SELFAUTOPARENT/texmf 55 % A place for local additions to a "standard" texmf tree. 56 TEXMFLOCAL = $SELFAUTOPARENT/texmf-local 57 58 % User texmf trees can be catered for like this... 59 HOMETEXMF=$HOME/texmf 60 61 % A place where texconfig stores modifications (instead of the TEXMFMAIN 62 % tree). texconfig relies on the name, so don't change it. 63 VARTEXMF = $SELFAUTOPARENT/texmf-var 64 65 % Now, list all the texmf trees. If you have multiple trees, 66 % use shell brace notation, like this: 67 % TEXMF = {$HOMETEXMF,!!$VARTEXMF,!!$TEXMFLOCAL,!!$TEXMFMAIN} 68 % The braces are necessary. 69 % 70 % A place where to store other TeX support files. It can be a remote 71 % texmf tree, or a tree to store non-free stuff, or ... 72 % TEXMFEXTRA=$SELFAUTOPARENT/texmf-extra 73 % If you set this, add $TEXMFEXTRA in the list below 74 % 75 TEXMF = {$HOMETEXMF,!!$VARTEXMF,$TEXMFLOCAL,!!$TEXMFMAIN} 76 77 % The system trees. These are the trees that are shared by all the users. 78 SYSTEXMF = $TEXMF 79 80 % The temporary area 81 TEMP = /var/tmp 82 83 % Where generated fonts may be written. This tree is used when the sources 84 % were found in a system tree and either that tree wasn't writable, or the 85 % varfonts feature was enabled in MT_FEATURES in mktex.cnf. 86 VARTEXFONTS = $VARTEXMF/fonts 87 88 % Where to look for ls-R files. There need not be an ls-R in the 89 % directories in this path, but if there is one, Kpathsea will use it. 90 TEXMFDBS = $TEXMF 91 92 % It may be convenient to define TEXMF like this: 93 % TEXMF = {$HOMETEXMF,!!$TEXMFLOCAL,!!$TEXMFMAIN,$HOME} 94 % which allows users to set up entire texmf trees, and tells TeX to 95 % look in places like ~/tex and ~/bibtex. If you do this, define TEXMFDBS 96 % like this: 97 % TEXMFDBS = $HOMETEXMF;$TEXMFLOCAL;$TEXMFMAIN;$VARTEXFONTS 98 % or mktexlsr will generate an ls-R file for $HOME when called, which is 99 % rarely desirable. If you do this you'll want to define SYSTEXMF like 100 % this: 101 % SYSTEXMF = $TEXMFLOCAL;$TEXMFMAIN 102 % so that fonts from a user's tree won't escape into the global trees. 103 % 104 % On some systems, there will be a system tree which contains all the font 105 % files that may be created as well as the formats. For example 106 % VARTEXMF = /var/lib/texmf 107 % is used on many Linux systems. In this case, set VARTEXFONTS like this 108 % VARTEXFONTS = $VARTEXMF/fonts 109 % and do not mention it in TEXMFDBS (but _do_ mention VARTEXMF). 110 111 112 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 113 % Usually you will not need to edit any of the other variables in part 1. % 114 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 115 116 % WEB2C is for Web2C specific files. The current directory may not be 117 % a good place to look for them. 118 WEB2C = $TEXMF/web2c 119 120 % TEXINPUTS is for TeX input files -- i.e., anything to be found by \input 121 % or \openin, including .sty, .eps, etc. 122 123 % LaTeX-specific macros are stored in latex. 124 TEXINPUTS.latex = .;$TEXMF/tex/{latex,generic,}// 125 TEXINPUTS.hugelatex = .;$TEXMF/tex/{latex,generic,}// 126 127 % Fontinst needs to read afm files. 128 TEXINPUTS.fontinst = .;$TEXMF/{tex{/fontinst,},fonts/afm}// 129 130 % Plain TeX. Have the command tex check all directories as a last 131 % resort, we may have plain-compatible stuff anywhere. 132 TEXINPUTS.tex = .;$TEXMF/tex/{plain,generic,}// 133 % other plain-based formats 134 TEXINPUTS.amstex = .;$TEXMF/tex/{amstex,plain,generic,}// 135 TEXINPUTS.ftex = .;$TEXMF/tex/{formate,plain,generic,}// 136 TEXINPUTS.texinfo = .;$TEXMF/tex/{texinfo,plain,generic,}// 137 TEXINPUTS.eplain = .;$TEXMF/tex/{eplain,plain,generic,}// 138 139 % e-TeX. 140 TEXINPUTS.elatex = .;$TEXMF/{etex,tex}/{latex,generic,}// 141 TEXINPUTS.etex = .;$TEXMF/{etex,tex}/{plain,generic,}// 142 143 % PDFTeX. This form of the input paths is borrowed from teTeX. A certain 144 % variant of TDS is assumed here, unaffected by the build variables. 145 TEXINPUTS.pdftexinfo = .;$TEXMF/{pdftex,tex}/{texinfo,plain,generic,}// 146 TEXINPUTS.pdflatex = .;$TEXMF/{pdftex,tex}/{latex,generic,}// 147 TEXINPUTS.pdftex = .;$TEXMF/{pdftex,tex}/{plain,generic,}// 148 TEXINPUTS.pdfelatex = .;$TEXMF/{pdfetex,pdftex,etex,tex}/{latex,generic,}// 149 TEXINPUTS.pdfetex = .;$TEXMF/{pdfetex,pdftex,etex,tex}/{plain,generic,}// 150 151 % Omega. 152 TEXINPUTS.lambda = .;$TEXMF/{omega,tex}/{lambda,latex,generic,}// 153 TEXINPUTS.omega = .;$TEXMF/{omega,tex}/{plain,generic,}// 154 155 % Context macros by Hans Hagen: 156 TEXINPUTS.context = .;$TEXMF/{pdfetex,pdftex,etex,tex}/{context,plain,generic,}// 157 158 % cstex, from Petr Olsak 159 TEXINPUTS.cslatex = .;$TEXMF//tex/{cslatex,csplain,latex,generic,}// 160 TEXINPUTS.csplain = .;$TEXMF/tex/{csplain,plain,generic,}// 161 TEXINPUTS.pdfcslatex = .;$TEXMF/{pdftex,tex}/{cslatex,csplain,latex,generic,}// 162 TEXINPUTS.pdfcsplain = .;$TEXMF/{pdftex,cstex,tex}/{csplain,plain,generic,}// 163 164 % Polish 165 TEXINPUTS.platex = .;$TEXMF/{tex}/{platex,latex,generic,}// 166 TEXINPUTS.pdfplatex = .;$TEXMF/{pdftex,tex}/{platex,latex,generic,}// 167 TEXINPUTS.pdfmex = .;$TEXMF/{pdftex,tex}/{mex,plain,generic,}// 168 TEXINPUTS.pdfemex = .;$TEXMF/{pdfetex,pdftex,tex}/{mex,plain,generic,}// 169 TEXINPUTS.mex = .;$TEXMF/tex/{mex,plain,generic,}// 170 171 % french 172 TEXINPUTS.frlatex = .;$TEXMF/{mltex,tex}/{french,latex,generic,}// 173 TEXINPUTS.frtex = .;$TEXMF/{mltex,tex}/{french,plain,generic,}// 174 TEXINPUTS.frpdflatex = .;$TEXMF/{mltex,pdftex,tex}/{french,latex,generic,}// 175 TEXINPUTS.frpdftex = .;$TEXMF/{mltex,pdftex,tex}/{french,plain,generic,}// 176 177 % MLTeX 178 TEXINPUTS.mltex = .;$TEXMF/{mltex,tex}/{plain,generic,}// 179 TEXINPUTS.mllatex = .;$TEXMF/{mltex,tex}/{latex,generic,}// 180 181 % odd formats needing their own paths 182 TEXINPUTS.lollipop = .;$TEXMF/tex/{lollipop,generic,plain,}// 183 TEXINPUTS.lamstex = .;$TEXMF/tex/{lamstex,generic,plain,}// 184 185 % David Carlisle's xmltex 186 TEXINPUTS.xmltex = .;$TEXMF/tex/{xmltex,latex,generic,}// 187 TEXINPUTS.pdfxmltex = .;$TEXMF/{pdftex,tex}/{xmltex,latex,generic,}// 188 189 % Sebastian Rahtz' jadetex for DSSSL 190 TEXINPUTS.pdfjadetex = .;$TEXMF/{pdftex,tex}/{jadetex,generic,plain,}// 191 TEXINPUTS.jadetex = .;$TEXMF/tex/{jadetex,generic,plain,}// 192 193 % Earlier entries override later ones, so put this last. 194 TEXINPUTS = .;$TEXMF/tex/{generic,}// 195 196 % Metafont, MetaPost inputs. 197 MFINPUTS = .;$TEXMF/metafont//;{$TEXMF/fonts,$VARTEXFONTS}/source// 198 MPINPUTS = .;$TEXMF/metapost// 199 200 % mft 201 MFTINPUTS = .;$TEXMF/mft// 202 203 % Web and CWeb input paths. 204 WEBINPUTS = .;$TEXMF/web// 205 CWEBINPUTS = .;$TEXMF/cweb// 206 207 % Dump files (fmt/base/mem) for vir{tex,mf,mp} to read (see web2c/INSTALL), 208 % and string pools (.pool) for ini{tex,mf,mp}. It is silly that we have six 209 % paths and directories here (they all resolve to a single place by default), 210 % but historically ... 211 TEXFORMATS = .;$TEXMF/web2c 212 MFBASES = $TEXFORMATS 213 MPMEMS = $TEXFORMATS 214 TEXPOOL = $TEXFORMATS 215 MFPOOL = $TEXFORMATS 216 MPPOOL = $TEXFORMATS 217 218 % Device-independent font metric files. 219 VFFONTS = .;$TEXMF/fonts/vf// 220 TFMFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/tfm// 221 222 % The $MAKETEX_MODE below means the drivers will not use a cx font when 223 % the mode is ricoh. If no mode is explicitly specified, kpse_prog_init 224 % sets MAKETEX_MODE to /, so all subdirectories are searched. See the manual. 225 % The modeless part guarantees that bitmaps for PostScript fonts are found. 226 PKFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/pk/{$MAKETEX_MODE,modeless}// 227 228 % Similarly for the GF format, which only remains in existence because 229 % Metafont outputs it (and MF isn't going to change). 230 GFFONTS = .;$TEXMF/fonts/gf/$MAKETEX_MODE// 231 232 % A backup for PKFONTS and GFFONTS. Not used for anything. 233 GLYPHFONTS = .;$TEXMF/fonts 234 235 % For texfonts.map and included map files used by mktexpk. 236 % See ftp://ftp.tug.org/tex/fontname.tar.gz. 237 TEXFONTMAPS = .;$TEXMF/fontname 238 239 % BibTeX bibliographies and style files. 240 BIBINPUTS = .;$TEXMF/bibtex/{bib,}// 241 BSTINPUTS = .;$TEXMF/bibtex/{bst,}// 242 243 % PostScript headers, prologues (.pro), encodings (.enc) and fonts; 244 % this is also where pdftex finds included figures files! 245 246 TEXPSHEADERS.pdflatex = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 247 TEXPSHEADERS.pdfelatex = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 248 TEXPSHEADERS.pdftexinfo = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 249 TEXPSHEADERS.pdfcslatex = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 250 TEXPSHEADERS.pdfcsplain = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 251 TEXPSHEADERS.pdfetex = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 252 TEXPSHEADERS.pdfjadetex = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 253 TEXPSHEADERS.pdfplatex = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 254 TEXPSHEADERS.pdfxmltex = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 255 TEXPSHEADERS.pdfmex = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 256 TEXPSHEADERS.pdftex = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 257 TEXPSHEADERS.pdftexinfo = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 258 TEXPSHEADERS.cont-de = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 259 TEXPSHEADERS.cont-en = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 260 TEXPSHEADERS.cont-nl = .;$TEXMF/{tex,pdftex,dvips,fonts/{type1,pfb}}// 261 TEXPSHEADERS.context = .;$TEXMF/{etex,tex,pdftex,dvips,fonts/{type1,pfb}}// 262 TEXPSHEADERS = .;$TEXMF/{dvips,fonts/{type1,pfb},pdftex}// 263 264 % PostScript Type 1 outline fonts. 265 T1FONTS = .;$TEXMF/fonts/{type1,pfb}//;$TEXMF/fonts/misc/hbf// 266 267 % PostScript AFM metric files. 268 AFMFONTS = .;$TEXMF/fonts/afm// 269 270 % TrueType outline fonts. 271 TTFONTS = .;$TEXMF/fonts/{truetype,ttf}// 272 TTF2TFMINPUTS = .;$TEXMF/ttf2pk// 273 274 % Type 42 outline fonts. 275 T42FONTS = .;$TEXMF/fonts/type42// 276 277 % A place to puth everything that doesn't fit the other font categories. 278 MISCFONTS = .;$TEXMF/fonts/misc// 279 280 % Dvips' config.* files (this name should not start with ‘TEX'!). 281 TEXCONFIG = .;$TEXMF/dvips// 282 283 % Makeindex style (.ist) files. 284 INDEXSTYLE = .;$TEXMF/makeindex//;$TEXMF/tex// 285 286 % Used by DMP (ditroff-to-mpx), called by makempx -troff. 287 TRFONTS = /usr/lib/font/devpost 288 MPSUPPORT = .;$TEXMF/metapost/support 289 290 % For xdvi to find mime.types and .mailcap, if they do not exist in 291 % $HOME. These are single directories, not paths. 292 % (But the default mime.types, at least, may well suffice.) 293 MIMELIBDIR = $SELFAUTOPARENT/etc 294 MAILCAPLIBDIR = $SELFAUTOPARENT/etc 295 296 % TeX documentation and source files, for use with kpsewhich. 297 TEXDOCS = .;$TEXMF/doc// 298 TEXSOURCES = .;$TEXMF/source// 299 300 % allow for compressed files, and various extenions 301 TEXDOCSSUFFIX = :.dvi:.pdf:.ps:.html:.txt:.tex 302 TEXDOCSCOMPRESS = :.gz:.bz2:.zip:.Z 303 TEXDOCEXT = {$TEXDOCSSUFFIX}{$TEXDOCSCOMPRESS} 304 305 % Omega-related fonts and other files. The odd construction for OFMFONTS 306 % makes it behave in the face of a definition of TFMFONTS. Unfortunately 307 % no default substitution would take place for TFMFONTS, so an explicit 308 % path is retained. 309 OFMFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/{ofm,tfm}//;$TFMFONTS 310 OPLFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/opl// 311 OVFFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/ovf// 312 OVPFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/ovp// 313 OTPINPUTS = .;$TEXMF/omega/otp// 314 OCPINPUTS = .;$TEXMF/omega/ocp// 315 316 %dvipdfm 317 DVIPDFMINPUTS = .;$TEXMF/dvipdfm// 318 319 %% t4ht utility, sharing files with TeX4ht 320 TEX4HTFONTSET=alias,iso8859 321 TEX4HTINPUTS = .;$TEXMF/tex4ht/base//;$TEXMF/tex4ht/ht-fonts/{$TEX4HTFONTSET}// 322 T4HTINPUTS= .;$TEXMF/tex4ht/base// 323 %% The mktex* scripts rely on KPSE_DOT. Do not set it in the environment. 324 325 XDVIINPUTS=.;$TEXMF/{xdvi,dvips}// 326 KPSE_DOT = . 327 328 % This definition isn't used from this .cnf file itself (that would be 329 % paradoxical), but the compile-time default in paths.h is built from it. 330 % The SELFAUTO* variables are set automatically from the location of 331 % argv[0], in kpse_set_progname. 332 % 333 % About the /. construction: 334 % 1) if the variable is undefined, we'd otherwise have an empty path 335 % element in the compile-time path. This is not meaningful. 336 % 2) if we used /$VARIABLE, we'd end up with // if VARIABLE is defined, 337 % which would search the entire world. 338 % 339 % The TETEXDIR stuff isn't likely to be relevant unless you're using teTeX, 340 % but it doesn't hurt. 341 % 342 TEXMFCNF = .;$VARTEXMF/web2c;{$SELFAUTOLOC,$SELFAUTODIR,$SELFAUTOPARENT}\ 343 {,{/share,}/texmf{.local,}/web2c};c:/TeX/texmf/web2c 344 345 346 % Suggestions for editor settings under Windows. Uncomment your 347 % preferred option. The corresponding MFEDIT can also be set for use with 348 % Metafont. 349 % 350 % Winedt: 351 % TEXEDIT=C:\WinEdt\WinEdt.exe "[Open('%s');SelLine(%d,7)] 352 % Textpad: 353 % TEXEDIT = c:\Progra~1\TextPad\System\Ddeopn32 TextPad %s(%d) 354 % UltraEdit (newer Win32 versions): 355 % TEXEDIT = uedit32 %s/%d/1 356 % WinTeXShell32: 357 % TEXEDIT = texshell.exe /l=%d %s 358 % vi, vim, gvim. here we show Windows gvim.exe: 359 % TEXEDIT = gvim.exe %s +%d 360 % PFE: 361 % TEXEDIT=pfe32/g%d %s 362 % MED: 363 % TEXEDIT=med.exe "%s" %d 364 % TSE: 365 % TEXEDIT=e32.exe "%s" -n%d 366 % Epsilon (Lugaru) http://www.lugaru.com/ 367 % TEXEDIT="c:\Program Files\eps90\bin\e32.exe" +%d %s 368 % WinShell 369 % TEXEDIT=C:\Progra~1\WinShell\WinShell.exe -c %s -l %d 370 371 % For unix 372 % 373 % vi, vim, NEdit, (X)Emacs, pico, jed 374 % TEXEDIT = vi +%d %s 375 % TEXEDIT = vim +%d %s 376 % TEXEDIT = nedit +%d %s 377 % TEXEDIT = xemacs +%d %s 378 379 %(x)fte: 380 % TEXEDIT = xfte -l%d %s 381 382 383 %------------------------------------------------------------------------------ 384 % Write .log/.dvi/etc. files here, if the current directory is unwritable. 385 % TEXMFOUTPUT = /tmp 386 387 % If a dynamic file creation fails, log the command to this file, in 388 % either the current directory or TEXMFOUTPUT. Set to the 389 % empty string or 0 to avoid logging. 390 MISSFONT_LOG = missfont.log 391 392 % Set to a colon-separated list of words specifying warnings to suppress. 393 % To suppress everything, use TEX_HUSH = all; this is equivalent to 394 % TEX_HUSH = checksum:lostchar:readable:special 395 TEX_HUSH = none 396 397 % Enable system commands via \write18{...}? 398 shell_escape = f 399 400 % Allow TeX \openout/\openin on filenames starting with ‘.' (e.g., .rhosts)? 401 % a (any) : any file can be opened. 402 % r (restricted) : disallow opening "dotfiles". 403 % p (paranoid) : as 'r' and disallow going to parent directories, and 404 % restrict absolute paths to be under $TEXMFOUTPUT. 405 openout_any = p 406 openin_any = a 407 % Allow TeX, MF, and MP to parse the first line of an input file for 408 % the %&format construct. 409 parse_first_line = t 410 411 % Allow TeX, eTeX, Omega to include ‘src:' specials in the dvi file. 412 % These specials are used by viewers to jump from the viewer into 413 % the editor at the right page/lineno. 414 % Possible values : none auto cr display hbox math par parend vbox 415 src_specials = none 416 417 % Disable search on multiple suffixes filenames. In many case, when ‘foo.bar' 418 % is looked for, you do not want to look for ‘foo.bar.tex' before. This flag 419 % disables searching for standard suffixes if the file name has already an 420 % extension of 3 characters. Default value is true (old behaviour). 421 % allow_multiple_suffixes = f 422 423 % Enable the mktex... scripts by default? These must be set to 0 or 1. 424 % Particular programs can and do override these settings, for example 425 % dvips's -M option. Your first chance to specify whether the scripts 426 % are invoked by default is at configure time. 427 % 428 % These values are ignored if the script names are changed; e.g., if you 429 % set DVIPSMAKEPK to ‘foo', what counts is the value of the environment 430 % variable/config value ‘FOO', not the ‘MKTEXPK' value. 431 % 432 % MKTEXTEX = 0 433 % MKTEXPK = 0 434 % MKTEXMF = 0 435 % MKTEXTFM = 0 436 % MKOCP = 0 437 % MKOFM = 0 438 439 % What MetaPost runs to make MPX files. This is passed an option -troff 440 % if MP is in troff mode. Set to ‘0' to disable this feature. 441 MPXCOMMAND = makempx 442 443 444 % Part 3: Array and other sizes for TeX (and Metafont and MetaPost). 445 % 446 % If you want to change some of these sizes only for a certain TeX 447 % variant, the usual dot notation works, e.g., 448 % main_memory.hugetex = 20000000 449 % 450 % If a change here appears to be ignored, try redumping the format file. 451 % 452 453 %----------------------------------------------------------------- 454 % Memory. Must be less than 8,000,000 total. 455 % 456 % main_memory is relevant only to initex, extra_mem_* only to non-ini. 457 % Thus, have to redump the .fmt file after changing main_memory; to add 458 % to existing fmt files, increase extra_mem_*. (To get an idea of how 459 % much, try \tracingstats=2 in your TeX source file; 460 % web2c/tests/memtest.tex might also be interesting.) 461 % 462 % To increase space for boxes (as might be needed by, e.g., PiCTeX), 463 % increase extra_mem_bot. 464 % 465 % 466 main_memory = 1500000 % words of inimemory available; also applies to inimf&mp 467 extra_mem_top = 0 % extra high memory for chars, tokens, etc. 468 extra_mem_bot = 0 % extra low memory for boxes, glue, breakpoints, etc. 469 470 % Words of font info for TeX (total size of all TFM files, approximately). 471 font_mem_size = 200000 472 473 % Total number of fonts. Must be >= 50 and <= 2000 (without tex.ch changes). 474 font_max = 1000 475 476 % Extra space for the hash table of control sequences (which allows 10K 477 % names as distributed). 478 hash_extra = 15000 479 480 % Max number of characters in all strings, including all error messages, 481 % help texts, font names, file names, control sequences. 482 % These values apply to TeX and MP. 483 484 % Minimum pool space after TeX/MP's own strings; must be at least 485 % 25000 less than pool_size, but doesn't need to be nearly that large. 486 string_vacancies = 45000 487 max_strings = 65000 % max number of strings 488 pool_free = 47500 % min pool space left after loading .fmt 489 pool_size = 125000 490 % Hyphenation trie. As distributed, the maximum is 65535; this should 491 % work unless ‘unsigned short' is not supported or is smaller than 16 492 % bits. This value should suffice for UK English, US English, French, 493 % and German (for example). To increase, you must change 494 % ‘ssup_trie_opcode' and ‘ssup_trie_size' in tex.ch (and rebuild TeX); 495 % the trie will then consume four bytes per entry, instead of two. 496 % 497 % US English, German, and Portuguese: 30000. 498 % German: 14000. 499 % US English: 10000. 500 % 501 trie_size = 262000 502 503 % Buffer size. TeX uses the buffer to contain input lines, but macro 504 % expansion works by writing material into the buffer and reparsing the 505 % line. As a consequence, certain constructs require the buffer to be 506 % very large. As distributed, the size is 50000; most documents can be 507 % handled within a tenth of this size. 508 buf_size = 200000 509 510 % Parameter specific to MetaPost. 511 % Maximum number of knots between breakpoints of a path. 512 % Set to 2000 by default. 513 % path_size.mpost = 10000 514 515 % These are pdftex-specific. 516 obj_tab_size = 200000 % PDF objects 517 dest_names_size=300000 % destinations 518 519 % These are Omega-specific. 520 ocp_buf_size = 500000 % character buffers for ocp filters. 521 ocp_stack_size = 10000 % stacks for ocp computations. 522 ocp_list_size = 1000 % control for multiple ocps. 523 524 % These work best if they are the same as the I/O buffer size, but it 525 % doesn't matter much. Must be a multiple of 8. 526 dvi_buf_size = 16384 % TeX 527 gf_buf_size = 16384 % MF 528 529 % It's probably inadvisable to change these. At any rate, we must have: 530 % 45 < error_line < 255; 531 % 30 < half_error_line < error_line - 15; 532 % 60 <= max_print_line; 533 % These apply to Metafont and MetaPost as well. 534 error_line = 79 535 half_error_line = 50 536 max_print_line = 79 537 stack_size = 1500 % simultaneous input sources 538 save_size = 5000 % for saving values outside current group 539 param_size = 1500 % simultaneous macro parameters 540 max_in_open = 15 % simultaneous input files and error insertions 541 hyph_size = 1000 % number of hyphenation exceptions, >610 and <32767 542 nest_size = 500 % simultaneous semantic levels (e.g., groups) 543 544 545 %----------------------------------------------------------------- 546 % 547 main_memory.hugetex = 1500000 548 param_size.hugetex = 1500 549 stack_size.hugetex = 1500 550 hash_extra.hugetex = 15000 551 string_vacancies.hugetex = 45000 552 pool_free.hugetex = 47500 553 nest_size.hugetex = 500 554 save_size.hugetex = 5000 555 pool_size.hugetex = 1250000 556 max_strings.hugetex = 65000 557 558 main_memory.mf = 800000 559 main_memory.mpost = 1000000 560 pool_size.mpost = 500000 561 562 buf_size.context = 200000 % needed for omega bug 563 extra_mem_bot.context = 4000000 564 extra_mem_top.context = 2000000 565 font_mem_size.context = 500000 566 hash_extra.context = 50000 567 main_memory.context = 1500000 568 max_strings.context = 100000 569 nest_size.context = 500 570 obj_tab_size.context = 300000 571 param_size.context = 5000 572 pool_free.context = 47500 573 pool_size.context = 1250000 574 save_size.context = 50000 575 stack_size.context = 5000 576 string_vacancies.context = 90000 577 % Context's metafun 578 main_memory.metafun = 2500000 579 pool_size.metafun = 1000000 580 581 % cslatex 582 main_memory.cslatex = 1500000 583 param_size.cslatex = 1500 584 stack_size.cslatex = 1500 585 hash_extra.cslatex = 15000 586 string_vacancies.cslatex = 45000 587 pool_free.cslatex = 47500 588 nest_size.cslatex = 500 589 save_size.cslatex = 5000 590 pool_size.cslatex = 1250000 591 max_strings.cslatex = 55000 592 font_mem_size.cslatex= 400000 593 594 main_memory.lambda = 1500000 595 596 % redundant. all LaTeX should be huge 597 main_memory.hugelatex = 1500000 598 param_size.hugelatex = 1500 599 stack_size.hugelatex = 1500 600 hash_extra.hugelatex = 15000 601 string_vacancies.hugelatex = 45000 602 pool_free.hugelatex = 47500 603 nest_size.hugelatex = 500 604 save_size.hugelatex = 5000 605 pool_size.hugelatex = 1250000 606 max_strings.hugelatex = 55000 607 font_mem_size.hugelatex= 400000 608 609 % standard LaTeX is itself huge 610 611 main_memory.latex = 1500000 612 param_size.latex = 1500 613 stack_size.latex = 1500 614 hash_extra.latex = 15000 615 string_vacancies.latex = 45000 616 pool_free.latex = 47500 617 nest_size.latex = 500 618 save_size.latex = 5000 619 pool_size.latex = 1250000 620 max_strings.latex = 55000 621 font_mem_size.latex= 400000 622 623 main_memory.jadetex = 1500000 624 param_size.jadetex = 1500 625 stack_size.jadetex = 1500 626 hash_extra.jadetex = 15000 627 string_vacancies.jadetex = 45000 628 pool_free.jadetex = 47500 629 nest_size.jadetex = 500 630 save_size.jadetex = 5000 631 pool_size.jadetex = 1250000 632 max_strings.jadetex = 55000 633 font_mem_size.jadetex= 400000 634 635 636 main_memory.pdfjadetex = 2500000 637 param_size.pdfjadetex = 1500 638 stack_size.pdfjadetex = 1500 639 hash_extra.pdfjadetex = 50000 640 string_vacancies.pdfjadetex = 55000 641 pool_free.pdfjadetex = 47500 642 nest_size.pdfjadetex = 500 643 save_size.pdfjadetex = 5000 644 pool_size.pdfjadetex = 1250000 645 max_strings.pdfjadetex = 55000 646 647 main_memory.xmltex = 1500000 648 param_size.xmltex = 1500 649 stack_size.xmltex = 1500 650 hash_extra.xmltex = 50000 651 string_vacancies.xmltex = 45000 652 pool_free.xmltex = 47500 653 nest_size.xmltex = 500 654 save_size.xmltex = 50000 655 pool_size.xmltex = 1250000 656 max_strings.xmltex = 55000 657 658 main_memory.pdfxmltex = 2500000 659 param_size.pdfxmltex = 1500 660 stack_size.pdfxmltex = 1500 661 hash_extra.pdfxmltex = 50000 662 string_vacancies.pdfxmltex = 45000 663 pool_free.pdfxmltex = 47500 664 nest_size.pdfxmltex = 500 665 save_size.pdfxmltex = 50000 666 pool_size.pdfxmltex = 1250000 667 max_strings.pdfxmltex = 55000 668 669 font_mem_size.pdflatex = 210000 670 main_memory.pdflatex = 1500000 671 param_size.pdflatex = 3000 672 stack_size.pdflatex = 3000 673 hash_extra.pdflatex = 15000 674 string_vacancies.pdflatex = 55000 675 pool_free.pdflatex = 47500 676 nest_size.pdflatex = 500 677 pool_size.pdflatex = 1250000 678 save_size.pdflatex = 50000 679 max_strings.pdflatex = 55000 680 681 main_memory.pdfelatex = 1500000 682 param_size.pdfelatex = 1500 683 stack_size.pdfelatex = 1500 684 hash_extra.pdfelatex = 15000 685 string_vacancies.pdfelatex = 45000 686 pool_free.pdfelatex = 47500 687 nest_size.pdfelatex = 500 688 pool_size.pdfelatex = 1250000 689 save_size.pdfelatex = 50000 690 max_strings.pdfelatex = 55000 691 692 main_memory.pdfetex = 1500000 % 1000000 bot/top 693 hash_extra.pdfetex = 50000 694 pool_size.pdfetex = 1250000 695 string_vacancies.pdfetex = 90000 696 max_strings.pdfetex = 100000 697 pool_free.pdfetex = 47500 698 nest_size.pdfetex = 500 699 param_size.pdfetex = 5000 700 save_size.pdfetex = 50000 701 stack_size.pdfetex = 5000 702 obj_tab_size.pdfetex = 256000