additional texmf tree for all users (was Re: [OS X TeX] Beginner help with TeXshop/MacTex needed)

Bruno Voisin bvoisin at mac.com
Sat Aug 26 23:21:57 CEST 2006


Le 26 août 06 à 19:46, Rowland McDonnell a écrit :

>> Where did you put this data that was lost when you used i-installer
>> and what were you installing?
>
> I didn't put it anywhere.  It was all in the folder that i- 
> installer put
> the freshly downloaded data in.  i-installer just threw away
> *everything* that it had previously downloaded when I asked it to  
> fetch
> me something new - I forget the details.
>
> Nothing to do with me.
>
> It seems pretty obvious to me that i-installer's got a bug or several
> that don't often show up, and one (or more) happened to show up when I
> was using it.

That's the normal way i-Installer works: when an installation has  
aborted before completing and you are starting again, or when you are  
installing a new version of an i-Package, i-Installer re-downloads  
the whole package from scratch. That's not a bug, but intended design.

As regards the way to use it, that's pretty simple: open a known i- 
Directory, open the i-Package to install, if necessary press  "Update  
Self From Remote" in the "Pkg Properties" tab, then press Install.  
And answer the questions you may be asked afterwards, if any (that  
depends on the i-Package).

>> I've also never had a problem with
>> files I put into texmf.local getting lost. The simple answer, if
>> you're worried about that, is to make a copy of texmf.local before
>> doing the update.
>
> I'd rather that someone helped me learn how the syntax of texmf.cnf
> works so that I can add my own parallel texmf tree.  Do you know if
> there's any documentation which explains how the syntax of these
> texmf.cnf files work?  If you do, I'd appreciate if you'd tell me  
> where
> to find it so I can learn what I need to learn to do what I want to  
> do.

No other doc that I know of, apart from the comments in texmf.cnf.

> [...] It's a bit worrying,
> especially since I've not yet found out in what order teTeX  
> searches the
> directory trees, nor have I been able to find out whether it uses the
> first match it finds or the last one.  Do you know the answer to  
> either
> of those questions?  I'd like to find out, y'see, and I can't find
> anything that'll tell me.

This is all explained in

/usr/local/teTeX/share/texmf.gwtex/README.howtexfindsfiles
/usr/local/teTeX/share/texmf.gwtex/README.texmf.gwtex

Namely, in texmf.cnf, the line

TEXMF={$HOMETEXMF,!!$TEXMFLOCAL,!!$TEXMFGW,!!$TEXMFTE,!!$TEXMFMAIN}

coupled with

TEXMFMAIN = $SELFAUTOPARENT/share/texmf
TEXMFTE = $SELFAUTOPARENT/share/texmf.tetex
TEXMFGW = $SELFAUTOPARENT/share/texmf.gwtex
TEXMFLOCAL = $SELFAUTOPARENT/share/texmf.local
HOMETEXMF = $HOME/Library/texmf

means that the following texmf trees are searched, in decreasing  
order of precedence:

~/Library/texmf
/usr/local/teTeX/share/texmf.local
/usr/local/teTeX/share/texmf.gwtex
/usr/local/teTeX/share/texmf.tetex
/usr/local/teTeX/share/texmf

kpsewhich gives more precise answers: where a specific TeX executable  
(tex, latex, pdftex, pdflatex, xetex, and so forth) looks for a file  
of a certain type (TeX input file, TFM file, PFB file, and so forth).  
By using for example

	kpsewhich --progname=pdflatex --show-path=.tex

you would have got the answer (reformatted here for clarity)

	.:
	/Users/<yourusername>/Library/texmf/pdftex/latex//:
         !!/usr/local/teTeX/share/texmf.local/pdftex/latex//:
         !!/usr/local/teTeX/share/texmf.gwtex/pdftex/latex//:
         !!/usr/local/teTeX/share/texmf.tetex/pdftex/latex//:
         !!/usr/local/teTeX/share/texmf/pdftex/latex//:
         /Users/<yourusername>/Library/texmf/tex/latex//:
         !!/usr/local/teTeX/share/texmf.local/tex/latex//:
         !!/usr/local/teTeX/share/texmf.gwtex/tex/latex//:
         !!/usr/local/teTeX/share/texmf.tetex/tex/latex//:
         !!/usr/local/teTeX/share/texmf/tex/latex//:
         /Users/<yourusername>/Library/texmf/pdftex/generic//:
         !!/usr/local/teTeX/share/texmf.local/pdftex/generic//:
         !!/usr/local/teTeX/share/texmf.gwtex/pdftex/generic//:
         !!/usr/local/teTeX/share/texmf.tetex/pdftex/generic//:
         !!/usr/local/teTeX/share/texmf/pdftex/generic//:
         /Users/<yourusername>/Library/texmf/tex/generic//:
         !!/usr/local/teTeX/share/texmf.local/tex/generic//:
         !!/usr/local/teTeX/share/texmf.gwtex/tex/generic//:
         !!/usr/local/teTeX/share/texmf.tetex/tex/generic//:
         !!/usr/local/teTeX/share/texmf/tex/generic//:
         /Users/<yourusername>/Library/texmf/pdftex///:
         !!/usr/local/teTeX/share/texmf.local/pdftex///:
         !!/usr/local/teTeX/share/texmf.gwtex/pdftex///:
         !!/usr/local/teTeX/share/texmf.tetex/pdftex///:
         !!/usr/local/teTeX/share/texmf/pdftex///:
         /Users/<yourusername>/Library/texmf/tex///:
         !!/usr/local/teTeX/share/texmf.local/tex///:
         !!/usr/local/teTeX/share/texmf.gwtex/tex///:
         !!/usr/local/teTeX/share/texmf.tetex/tex///:
         !!/usr/local/teTeX/share/texmf/tex///

telling exactly where and in which order (by decreasing order of  
precedence) pdflatex (invoked when TeXShop compiles a LaTeX file in  
pdfTeX mode) looks for a file of extension .tex (and .cls, .sty, .fd,  
and so forth). Namely first the current directory, then ~/Library/ 
texmf/pdftex/latex, then /usr/local/teTeX/share/texmf.local/pdftex/ 
latex, and so forth.

As far as I'm concerned this discussion is closed. Complaining a  
software works the way it does, because you would like it to work  
differently, calling this a bug, and then calling the developer  
names: this is just a waste of everybody's time.

Bruno Voisin------------------------- Info --------------------------
Mac-TeX Website: http://www.esm.psu.edu/mac-tex/
          & FAQ: http://latex.yauh.de/faq/
TeX FAQ: http://www.tex.ac.uk/faq
List Archive: http://tug.org/pipermail/macostex-archives/




More information about the macostex-archives mailing list