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