2011/1/16 Takayuki YATO (ZR) wrote:
> Hello all,
>
> I investigated which hyphenation pattern Babel would use for each
> language option listed in babel.sty, on the artificial settings
> where every pattern name (including synonyms) listed in language.XXX
> has a distinct \language value (ie. if 'bahasa' and 'indonesian'
> were different patterns then which one would 'bahasa' langauge
> option choose?). I did the test for both language.ptx and
> language.dat lists.
> # NB: The set of "all the hyphenation pattern names", "all the valid
> # language option names of Babel" and "all the names of ldf files
> # provided by Babel" are all-distinct.
>
> The languages for which the results differ is as follows (the full
> list is attached)
>
> Language language.ptx language.dat
> australian australian british
> canadian canadian american
> newzealand newzealand british
I see now (from babel):
\LdfInit\CurrentOption{date\CurrentOption}
\ifx\l@english\@undefined
\ifx\l@UKenglish\@undefined
\ifx\l@british\@undefined
\ifx\l@american\@undefined
\ifx\l@USenglish\@undefined
\ifx\l@canadian\@undefined
\ifx\l@australian\@undefined
\ifx\l@newzealand\@undefined
\@nopatterns{English}
\adddialect\l@english0
\else
\let\l@english\l@newzealand
\fi
\else
\let\l@english\l@australian
\fi
\else
\let\l@english\l@canadian
\fi
\else
\let\l@english\l@USenglish
\fi
\else
\let\l@english\l@american
\fi
\else
\let\l@english\l@british
\fi
\else
\let\l@english\l@UKenglish
\fi
\fi
No difference in functionality indeed since there are no special
patterns for Australian. To me this seems like the author of babel was
thinking of: "if someone ever comes up with special Australian
patterns, they will work out-of-the-box".
> As for the languages but last two, the two pattern names
> resulted from the two settings are synonymous in language.ptx.
> As is already argued in this ML, the patttern for language
> "samin" is in fact absent in either setting. The pattern
> "kurmanji" is a real addition and simply favorable.
> kurmanji english kurmanji
Kurmanji patterns are new (2009), so I can understand why they are not
present in language.ptx.
> samin samin english
However the old setting in pTeX was to use
samin sahyph-ptex.tex
which is the equivalent set of patterns as hyph-sv.tex (Swedish). I
hardly know anything about Samin (North Sami), so I have no idea what
would be preferrable.
> magyar magyar hungarian
Oh, I see it now. This one was overlooked by me. For babel both would work:
\ifx\l@magyar\@undefined
\ifx\l@hungarian\@undefined
\@nopatterns{Magyar}
\adddialect\l@magyar0
\else
\let\l@magyar\l@hungarian
\fi
\fi
We can make a synonym hungarian=magyar if needed. (The reason against
doing it is that creating a global synonym in TeX Live will load the
largest available patterns twice in eTeX, while it won't really bring
any advantages. I can easily add it back to language.ptx, but that
won't make any difference at all.)
> bahasa bahasa indonesian
> indonesian bahasa indonesian
> indon bahasa indonesian
> bahasai bahasa indonesian
> malay bahasa indonesian
> meyalu bahasa indonesian
> bahasam bahasa indonesian
>From what I understand there any difference if we leave just
indonesian? (We can create indonesian=bahasa synonym if needed.)
Anyway, the old "bahasa" was just pointing to Indonesian patterns, so
this change doesn't make any difference at all, I guess.
> As a consequence, there will be nothing bad happening,
> even if a user is using weird language options names
> such as "canadian".
You are right.
A short summary:
- I made some changes in language.ptx to accomodate the changes I made
it TeX Live and hyph-utf8. Please feel free to fix the file in any way
you want (or ask me to fix it).
- List of differences with previous version of language.ptx: some new
patterns added, some patterns updated, samin has been removed (it
pointed to Swedish patterns before), I temporary commented out Greek
(+some different synonyms without any functional difference).
- Let's discuss Greek in the other thread.
- I have another question about dated German patterns for another thread.
Thanks a lot for the very helpful insight,
Mojca