Thu, 18 Jul 2013 09:02:53 +0100
On 17/07/2013 19:27, Joel C. Salomon wrote:
> Joseph Wright <joseph.wright@...> writes:
>> At present I'm waiting to see what people thing of the code-level stuff.
>> At the same time, I'm not sure about making package option processing
>> too complex. The lesson I've learned is that keyval in options is
>> governed by the LaTeX2e kernel: options are expanded, and checking for
>> clashes doesn't 'know' about keyval. Thus I tend to think load-time
>> options should really be limited to things that need to happen there,
>> with later \<thing>setup to cover more complex option sets.
> Is the behavior of package & class options expected to be different
> (specifically, keyval-aware) in a LaTeX3 kernel? If so, would it be
> appropriate to define \UseExplPackage et al. so that the future behavior can
> be experimented with?
Not really worthwhile. The way that the LaTeX2e kernel does option
processing means that expansion/space stripping happens 'early'. As
such, you can't alter it in a way that is easy. Look at the option
keyval-patching code in xkeyval and kvoptions to see this: you have to
pre-load an additional package before the one where you want 'new'
effects. Until we actually have the basics of a new format, this isn't
going to help.