[tex-k] more on TDS 1.1

Eddie Kohler kohler at cs.ucla.edu
Wed Aug 18 18:35:05 CEST 2004

> kpathsea gets all its information on how the texmf tree is layed out
> from the texmf.cnf file, and is itself agnostic as to whether TDS 1.0,
> TDS 1.1, or something completely different is used.
> You could look for paths that are typical for TDS 1.0 vs TDS 1.1.
> Given that "something completely different" for the layout is unusual
> but not impossible, are you certain you're trying to solve the right
> problem when looking for the TDS version?

Honestly, I'm not sure; I was trying to implement the easiest possible thing 
that will work for TDS-compatible installations.

The procedure otftotfm uses is relatively simple:
1. Look for a writable TEXMF.
2. Put files under that TEXMF as follows:
    TFM          TEXMF/fonts/tfm/VENDOR/TYPEFACE/
    VF           TEXMF/fonts/vf/VENDOR/TYPEFACE/
    PL           TEXMF/fonts/pl/VENDOR/TYPEFACE/
    VPL          TEXMF/fonts/vpl/VENDOR/TYPEFACE/
    Type 1       TEXMF/fonts/type1/VENDOR/TYPEFACE/
    encoding     TEXMF/dvips/VENDOR/
    psfonts.map  TEXMF/dvips/VENDOR/
3. Update TEXMF/ls-R as appropriate.

This procedure was relatively easy to write and, much more importantly, easy to 
explain in the manual.

Last night I coded up a "hack" for TDS 1.1/recent teTeX installations, namely to 
use kpathsea to look for an 'ENCFONTS' variable.  If that variable exists, then 
otftotfm assumes TDS 1.1, and changes the locations of encoding and psfonts.map 
files as follows:

    encoding     TEXMF/fonts/enc/dvips/VENDOR/
    psfonts.map  TEXMF/fonts/map/dvips/VENDOR/

I suppose that the "right thing" would be to use kpathsea to expand the relevant 
search paths for each type of file, and put the files in the first writable 
directories found.  But I'm loath to code this up unless it's strictly necessary.

* This more complex procedure would be harder to explain in the manual; I feel 
like I'd start getting confused bug reports.
* The search paths might contain directories not under any TEXMF; it's not 
immediately clear how and when to update ls-R.
* The kpathsea search paths don't tell you whether to append VENDOR/ or 
VENDOR/TYPEFACE/ or nothing.
* Plus coding it would be kind of a pain in the ass.
* If you have a special installation you can always turn off automatic mode and 
install the files wherever you want.

Does this make sense, or should I just bite the bullet?

More information about the tex-k mailing list