[OS X TeX] [OT: sed] Does not find my private texmf tree
Bruno Voisin
bvoisin at mac.com
Wed Sep 5 14:04:33 CEST 2007
Le 5 sept. 07 à 13:28, Maarten Sneep a écrit :
> Martin Costabel schreef:
>
>> Small remark: Instead of the sed command with the line break,
>> which in
>> addition does not work with tcsh, it is simpler to use tr,
>>
>> kpsewhich -show-path=tex -progname=latex| tr : '\n'
>
> But then, who uses tcsh :p
>
> sed on linux allows for escapes, so there you can use: sed 's/:/\n/
> g', but
> to my surprise that didn't work on my Mac, and therefore this
> alternative.
> tr is of course the tool meant to be used here.
Motivated by this thread, I decided at last to spend some time
looking for the significance of the "//", "///" and "!!" in the
output I get:
.
/Users/bvoisin/.texlive2007/texmf-config/tex/latex//
/Users/bvoisin/.texlive2007/texmf-var/tex/latex//
/Users/bvoisin/Library/texmf/tex/latex//
!!/usr/local/texlive/2007/texmf-config/tex/latex//
!!/usr/local/texlive/2007/texmf-var/tex/latex//
!!/usr/local/texlive/2007/texmf/tex/latex//
!!/usr/local/texlive/2007/../texmf-local/tex/latex//
!!/usr/local/texlive/2007/texmf-dist/tex/latex//
/Users/bvoisin/.texlive2007/texmf-config/tex/generic//
/Users/bvoisin/.texlive2007/texmf-var/tex/generic//
/Users/bvoisin/Library/texmf/tex/generic//
!!/usr/local/texlive/2007/texmf-config/tex/generic//
!!/usr/local/texlive/2007/texmf-var/tex/generic//
!!/usr/local/texlive/2007/texmf/tex/generic//
!!/usr/local/texlive/2007/../texmf-local/tex/generic//
!!/usr/local/texlive/2007/texmf-dist/tex/generic//
/Users/bvoisin/.texlive2007/texmf-config/tex///
/Users/bvoisin/.texlive2007/texmf-var/tex///
/Users/bvoisin/Library/texmf/tex///
!!/usr/local/texlive/2007/texmf-config/tex///
!!/usr/local/texlive/2007/texmf-var/tex///
!!/usr/local/texlive/2007/texmf/tex///
!!/usr/local/texlive/2007/../texmf-local/tex///
!!/usr/local/texlive/2007/texmf-dist/tex///
Thus it appears that "//" is explained in section 3.3.6 of /Library/
TeX/Documentation/texmf-doc/kpathsea/kpathsea.pdf, and means, as one
might expect, recursive search of all subdirectories.
And that "!!" is explained at the end of section 3.4.1 and means that
only the catalog entries corresponding to the subdirectories of the
following path will be searched in ls-R (produced by mktexlsr aka
texhash), not the actual directories themselves. For example:
/Users/bvoisin/Library/texmf/tex/latex// means that all the
subdirectories of ~/Library/texmf/tex/latex/ in my home directory
will be searched recursively, on disk
!!/usr/local/texlive/2007/texmf-dist/tex/latex// means that the
entries for all the recursive subdirectories of /usr/local/texlive/
2007/texmf-dist/tex/latex/ will be searched in ls-R, but not the
subdirectories themselves on disk
This explains, at last, why "sudo mktexlsr" is required after
modifications to /usr/local/texlive/2007/texmf-local/, but not after
modifications to ~/Library/texmf/.
But I don't quite get the meaning of "///" at the end of !!/usr/local/
texlive/2007/texmf/tex/// for example.
Bruno Voisin
------------------------- Helpful Info -------------------------
Mac-TeX Website: http://www.esm.psu.edu/mac-tex/
TeX FAQ: http://www.tex.ac.uk/faq
List Archive: http://tug.org/pipermail/macostex-archives/
List Reminders & Etiquette: http://www.esm.psu.edu/mac-tex/list/
More information about the macostex-archives
mailing list