2011/9/21 Heiko Oberdiek <heiko.oberd...@googlemail.com>:
> On Wed, Sep 21, 2011 at 02:34:41PM +0200, Zdenek Wagner wrote:
>
>> That's right. \RequirePackage and \usepackage maintain internally a
>> list of already loaded packages. There is one potential problem, you
>> are not specified a different list of options. Thus if you use
>> \RequirePackage{something} without any options, it is harmless. If a
>> user needs "something" with some options, he or she must load it
>> explicitely with these options in advance.
>
> The option lists may differ. But the requirement of LaTeX is that
> the option list of the first load request is the superset of
> the options in all load requests.
> ("load request": \RequirePackage, \usepackage, (\PassOptionsToPackage))
>
> \usepackage[foo,bar,xyz]{something}
> \usepackage[bar,foo,xyz]{something}
> \usepackage[bar]{something}
> \usepackage{something}
>
> is ok, but any new option given later
>  \usepackage[foo,bar,xyz]{something}
>  \usepackage[new]{something}% throws an error
>
> If there is an option clash, the user can press "h" to get
> the exented help text of the error and LaTeX shows the options.
> Then the user can resolve it by calling the package earlier with
> the option superset as option list. And the package documentation
> needs to be checked, if options of this package might overwrite
> each other.
>
Agreed. What I meant was if package "anything" contains
\RequirePackage{something} without any options but user needs
"something" with some option, then the correct way is

\usepackage[options]{something}
\usepackage{anything}

I am not sure whether the same effect can be achieved by giving the
option in \documentclass, probably yes but I would have to check it. I
agree that it is a bug if a package relies that a requested package
will be loaded by some automagic mechanism.

> Yours sincerely
>  Heiko Oberdiek
>
>
> --------------------------------------------------
> Subscriptions, Archive, and List information, etc.:
>  http://tug.org/mailman/listinfo/xetex
>



-- 
Zdeněk Wagner
http://hroch486.icpf.cas.cz/wagner/
http://icebearsoft.euweb.cz



--------------------------------------------------
Subscriptions, Archive, and List information, etc.:
  http://tug.org/mailman/listinfo/xetex

Reply via email to