Uwe Stöhr <[EMAIL PROTECTED]> writes:

> Why is this weird? Every language package manual I know states to load
> babel this way, 

The babel documentation states:

  The LATEX2e way of providing the same information is:
   \documentclass{article}
   \usepackage[dutch,english]{babel}
  or, making dutch and english global options in order to let other
  packages detect and use them:
   \documentclass[dutch,english]{article}
   \usepackage{babel}
   \usepackage{varioref}
  In this last example, the package varioref will also see the options and will
  be able to use them.

So passing the language to documentclass is good practice.

> also the VnTeX-package manual. 

Do you read vietnamese? I don't. Where would an english manual
(besides the README, which does not say much) be found?

> Giving the babel options in the documentclass is equivalent for the
> other languages we support, so loading them directly with babel when
> vietnamese is used, doesn't change anything.

It is weird because at _LaTeX_ level, all options of \documentclass
are passed to all packages. I would be surprised to learn that
vietnam.ldf is different. 

And, as you know, I kind of hate explicit encoding of languages in the
code. Every time you feel tempted to add an explicit check, you should
think a long long time about it to find why it is necessary. Code like
that seem innocuous enough, but then someone has to come and clean it
up.

I do not have a recent enough TeX to test it out unfortunately (and it
is not my top priority), but I would have expected you to ask to
somebody who knows vntex very well why such a thing is needed.

We should strive not only for code that works, but more importantly
for code that is understood. And special casing should be needed only
when we know there is no way out.

> I don't know exactly why vietnamese is special here, I guess because
> the inputenc package must be loaded with utf8 before the vietnam.ldf
> can be taken by babel. Because when you put vietnam only to
> documentclass options, you get a babel error, that no language option
> is given.

Hmmm. What is the code that would be generated for vietnamese without
your patch? Could you show me the error?

JMarc

Reply via email to