texmf.cnf for BLU

Staszek Wawrykiewicz StaW@gust.org.pl
Sat, 11 Mar 2000 04:54:37 +0100 (MET)

It is still not clear what can be changed in the local/user
configuration. For example, teTeX 1.0.7 texconfig do not make a copy of
texmf.cnf to the $VARTEXMF (if it was set, and as it was in previous
I can understand the idea of having some optimization or not allowing
somebody to mess such important file and making all needed local
changes by running only texconfig, but I'd like suggest to leave some
freedom to many experienced users (in many cases, they know better
what should be done with TeX stuff configuration than their admins ;-)

There are several reasons for having local|user|$VARTEXMF texmf.cnf:
1. the user can have his own format file, so, e.g., TEXINPUTS should be
   modified (preferably) in the texmf.cnf local copy.

   As it can be seen from many mails:
2. TEXEDIT can be set by the the user to the prefered editor. Some prefer
   vi, some emacs, etc. Again, local texmf.cnf is the best place.

3. The user can add another variant of pdf(*)tex in texmf/web2c/fmtutil.cnf
Please have a look at the actual fragment of texmf.cnf from
TeX Live5 alpha:
% PostScript headers, prologues (.pro), encodings (.enc) and fonts;
% this is also where pdftex finds included figures files!

TEXPSHEADERS.pdflatex   = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.pdfelatex  = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.pdftexinfo = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.pdfcslatex = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.pdfcsplain = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.pdfetex    = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.pdfjadetex = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.pdfmex     = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.pdftex     = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.pdftexinfo = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.cont-de    = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.cont-en    = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.cont-nl    = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS.context    = .;$TEXMF/{etex,tex,pdftex,dvips,fonts/type1}//
TEXPSHEADERS = .;$TEXMF/{dvips,fonts/type1,pdftex}//

For each variant of pdf(*)tex we have exactly the same value (??!).
If the user add (in fmtutil.cnf) some other variant (say: pdfplatex),
he has to introduce also at least 2 lines in texmf.cnf:

TEXINPUTS.pdfplatex  = .;$TEXMF/{pdftex,tex}/{platex,latex,generic,}//
(it is really needed for some optimization)
TEXPSHEADERS.pdfplatex   = .;$TEXMF/{tex,pdftex,dvips,fonts/type1}//
(it is _not_ really needed, but I do not know how to change it
for all pdf* variants)

The last one variable is rather not for ``where pdftex finds included 
figures files!'', I'm rather sure that nobody put his figures here ;-), 
but is _very important for finding first_ texmf/pdftex/config/psfonts.map
(which, in turn, can be different from texmf/dvips/config/psfonts.map).

The last question: if pdf* do not use psfonts.map from the dvips/config/
(or it use it as the last resort) why it use the same file name?
Some time ago it used pdftex.map and it was enought clear...
I remember Thomas' work with updmap. Perhaps old ideas are not so bad...

Staszek Wawrykiewicz
email: staw@gust.org.pl