[twg-tds] [gaulle@idris.fr: a TDS question]

Reinhard Kotucha reinhard.kotucha at web.de
Mon Jun 30 03:26:10 CEST 2003


>>>>> "Karl" == Karl Berry <karl at freefriends.org> writes:

    >     OR better search first <language>/plain.bst.  Ok, but where
    > does the algorithm insert the <language>?  Going back to
    > TEXINPUTS, we have (for example):

    > TEXINPUTS.latex = .;$TEXMF/tex/{latex,generic,}//

    > [...]

There are a few points that should be considered:

The TDS is a standard which does not depend on a specific
implementation.  Regarding web2c as a reference implementation, I
think that we can assume that if something works with web2c, it can be
implemented on any TDS compliant system.

I suppose that Bernard has LaTeX packages in mind, but LaTeX doesn't
make any assumption about file systems.  LaTeX is designed to work
with file systems that do not know what a subdirectory is at well.
That means that it depends on unique filenames.

I don't know whether such a system is in use today, but if you write a
LaTeX package that makes assumptions about the file system you
probably break some (commercial) non-TDS based TeX systems.

As long as we talk about TDS we don't have to keep non-TDS compliant
systems in mind, but we have to if we want to make use of the features
we are discussing here, i.e. in packages in the LaTeX distribution.

Let's assume that we want to find a good solution and disregard
antique TeX implemetations.

What do you think about the following scheme?

If you say 
   /input <dir>/<file>
kpathsea searches for <file> according to the rules in texmf.cnf
(nothing has to be changed here) and returns the first file that is in
a subdirectory <dir>.

That means that if you have "." in your search path, and your
texmf.cnf is not set up not to scan "." recursively, nothing should be
found.

Years ago I tried it with an ancient web2c and it worked.  Maybe it
still works and nothing has to be changed, but it would be good if
Olaf could confirm it.

There are many applications for this scheme.

Bernards example is not a good one because he intends to provide all
the files himself.  In this case one can agree with Walter that it
doesn't make much difference whether you \input a-b or \input a/b,
it can be solved easily by macro programming.

What I really like is if you could say something like

   \usepackage{adobe/courier}
or
   \usepackage{urw/courier}

That would mean that you could have two files courier.sty maintained
by different authors.

But what we have to discuss here at first is whether we should remove
the rule that filenames have to be unique in a TDS compliant system
and we have to investigate whether it can break existing
implementations.

BTW., during the DANTE2003 in Bremen there was a meeting of all CTAN
maintainers and the most important TeX distributors.  I did not follow
the whole discussion, but what certainly comes in the near future is
that every package on CTAN will be accompanied by an XML file
describing the structure of the package.  That means that it will be
much easier to deal with different files having the same name as it is
today. 

Regards,
  Reinhard

-- 
----------------------------------------------------------------------------
Reinhard Kotucha			             Phone: +49-511-27060390
Marschnerstr. 25
D-30167 Hannover	                      mailto:reinhard.kotucha at web.de
----------------------------------------------------------------------------
Microsoft isn't the answer. Microsoft is the question, and the answer is NO.
----------------------------------------------------------------------------




More information about the twg-tds mailing list