tds: Extensions

 
 3.1.1 Extensions
 ----------------
 
 TeX has spawned many companion and successor programs ("engines"), such
 as PDFTeX, Omega, and others.  The TDS specifies that the input files
 for such programs (using a TeX-like syntax) be placed within the
 top-level `tex' directory, either at the top level or within a format
 subdirectory, even though the original TeX program may not be able to
 read them.  For example:
 
      texmf/tex/aleph
      texmf/tex/enctex
 
    This is a change from TDS 1.0, which specified top-level `EXTENSION'
 directories for each such program.  We felt the new approach is
 preferable, because:
 
    * Authors of relevant packages typically make their code detect the
      engine being used, and issue error messages or adapt to
      circumstances appropriately.  Furthermore, as a package matures,
      it may support multiple engines.  Thus, a package could
      conceivably be placed in any of several top-level directories, at
      different times.  Putting all packages under the top-level `tex'
      directory provides a stable location over time.
 
    * Users need to be able to switch between engines, and configuring
      different search paths for each engine is difficult and
      error-prone.
 
 
    Thus, in practice, having different top-level directories caused
 difficulties for everyone involved--users, package authors, site
 administrators, and system distributors.
 
    Please contrast this approach with the `IMPLEMENTATION' top-level
 subdirectory (Section ⇒Top-level directories), which is to be
 used for configuration files that (presumably) do not use TeX syntax
 and in any case should not be found along the main TeX input search
 path.