[twg-tds] storing scripts in the texmf tree
olaf at infovore.xs4all.nl
Fri Feb 13 23:49:40 CET 2004
Fabrice Popineau writes:
>> On the other hand, I do not see why this would have to be the case:
>> updating the ls-R file doesn't change the already-loaded segments.
> The user may expect his latest changes to be taken into account. If he
> adds some package to his texmf tree while xdvi is running, xdvi won't
> see the new package after mktexlsr. But worse, if xdvi is locking the
> shared memory segment, any new process will reuse it because it is there.
> So you end up with some unnatural behaviour.
Two points: right now, libkpathsea doesn't really have any way to pick
up third-party changes to an ls-R. So if you have xdvi running, then
add a package to a tree that's only searched through its ls-R, then
you'll have to restart xdvi before it will see the new files, because
it will not re-read the ls-R.
As I sketched in an earlier mail, I wouldn't let the segments lie
around like that. Secifically, kpathsea-enabled programs would have
to be told that they should use a particular segment, rather than try
to discover whether there is a suitable segment.
For example if I run tex, and this has kpathsea start mktexpk (which
calls kpsewhich and mf) then tex will read the then-current ls-R, and
share the hash table it constructs from it with the kpsewhich and mf
called from mktexpk. (For scripts like texexec I can imagine having
kpsewhich options which create (and clean up) a set of segments to be
used by that particular invocation of the script.)
(This space left blank for technical reasons.)
More information about the twg-tds