[XeTeX] Polyglossia "broken"?

Heiko Oberdiek heiko.oberdiek at googlemail.com
Wed Sep 21 15:08:29 CEST 2011


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.

Yours sincerely
  Heiko Oberdiek


More information about the XeTeX mailing list