[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: texdoc doesn't find documentation



Jörg Sommer <joerg@alea.gnuu.de> wrote:

> Yes. But I suppose, the symlink inside of the symlinked directory are a
> problem. texdoc starts at /u/s/t-t/doc and may expect it is a directory.
> When it checks if
> /u/s/t-t/doc/latex/amsmath/../../../texlive-latex-base/latex/amsmath/amsldoc.pdf.gz
> exists, it fails for the known reason.

Sorry, which known reason?  The point is that it works for me.  I'm
using newer packages of texlive-bin (not yet on tug.org), but that
shouldn't make a difference for texdoc.  

> I don't know how texdoc work. It's only a conjecture.

For "texdoc -l" (that is what fails on your system, right?) it calls

kpsewhich -format='TeX system documentation' $name$ext 2>/dev/null

(in other words, it uses $TEXDOCS) and checks for every supported value
of $ext whether this gives any result.  Symlinks should be totally
transparent to it (and they are, here).  Is amsldoc.pdf.gz in your
/usr/share/texmf-texlive/ls-R? 

> But, while we talk about how texdoc work, how does it work? Does it use
> the ls-R files? The funny at me is that texdoc -s is much faster than
> texdoc after the first run. The first run takes very long, because the
> cache must get filled. But if the directory listing is in the cache it is
> faster than texdoc -l.

"texdoc $name" and "texdoc -l $name" use kpathsea and therefore the ls-R
database.  "texdoc -s <pattern>", on the other hand, takes an egrep
pattern (uups, I think we already had this info in the teTeX manpage)
and uses a "find ... | egrep" construct.  Naturally this is faster after
the first run.

Regards, Frank
-- 
Dr. Frank Küster
Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich
Debian Developer (teTeX/TeXLive)



Reply to: