Subject: | |
From: | |
Reply To: | |
Date: | Sat, 18 Sep 2010 12:07:00 +0200 |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
On Sat, Sep 18, 2010 at 09:57:04AM +0200, Frank Mittelbach wrote:
> Joseph Wright writes:
> > On 17/09/2010 20:36, Frank Mittelbach wrote:
> > > since you already looked at the different implementations, any suggestion on
> > > how to best improve the LaTeX2e behaviour?
> >
> > I take it that this does possibly count as a bug then, rather than as a
> > 'feature'?
>
> it doesn't count as a bug I would say, for the simple reason that per
> specification the optional argument of \usepackage doesn't support a key value
> list but just a list of option names (that themselves have no spaces)
> separated by comma. Only later packages appeared that internally added
> something like keyval and manipulated the received option list from
> \usepackage as a key/val list, but that happens after \usepackage has already
> removed spaces and unfortunately in this case also the braces.
>
> pragmatic approach:
>
> you state that one needs to say ={,} to make things work as this is a fairly
> seldom issue
>
> more elaborate approach
>
> change \@pass@ptions so that it only removes spaces up front, around a comma
> and at the end
This isn't enough, there are many other places to fix. For example,
LaTeX removes used options from the global unused option list.
Because of the braces \@removeelement will break, because the option
is used inside the parameter text, where catcode 1 and 2 tokens are
forbidden.
Yours sincerely
Heiko <[log in to unmask]>
|
|
|