Jürgen Spitzmüller wrote:
rgheck wrote:
Yes, it would.

OK. I'll do this before I commit anything.

Something like this will work. Just a couple thoughts.

First, I don't think we want to tie this too tightly to LaTeXFeatures,
so that we have to hardcode what packages can be Required. This will
make maintenance difficult---you didn't list endnotes.sty---and anyway users 
ought to be able to Require packages in their custom layouts. So
I'd suggest we have a more flexible mechanism for keeping track of what
packages have been Required---just a vector we build---one that could be 
integrated at the last minute with LaTeXFeatures.

but then we lose all our possiblilities of package checking.

I think this is a different issue. If someone wants to Require a package we don't have listed in LaTeXFeatures, then, yes, we can't check for it, and so we ought to ignore it for that purpose. But that's different from saying they can't Require such a package at all. Actually, I'm not sure how this will work in practice, anyway. What does happen if I try to "Require foo"? Surely there's some fairly simple way to handle this. (Unfortunately, I have to go deal with graduate admissions applications and can't play with LyX right now.)

Secondly, it seems like we ought for the same reason to have a Requires
> tag in the TextClass itself.
done. Patch attached. I think we can get rid of the ugly optional argument of 
DeclareLyXModule now.
OK, well, it's about to get new ones, anyway, so don't bother with configure.py. (It won't break right now, anyway.) I intend to implement Requires and Excludes arguments for the modules themselves as part of the modularization of the AMS classes. Thus, the "Theorems" module will exclude the "Theorems (AMS)" module, and it won't be possible to use them both. I also want to split the theorem modules themselves into basic and advanced parts, so that you don't have to overpopulate your layout box just to get the basic theorem constructs. Thus, "Theorems (Extra)" will require either "Theorems" or "Theorems (AMS)", since the basic definitions have to be in place already. I expect we'll find other uses for this, too.

Richard

Reply via email to