[lltx] Luatex and multiple pattern files
Claudio Beccari
claudio.beccari at gmail.com
Mon Apr 11 16:43:55 CEST 2016
Dear friends,
I am facing a serious problem with luatex and its policy tho load
pattern file only in demand, English excluded.
The synonyms keyword in language.dat.lua contains the list of language
names for which a given pattern file is applicable. The analogous
hyphennames keyword in polyglossia does more or less the same thing.
But there are language variants that require different hyphenation
rules, and therefore different pattern files.
You cannot select the proper hyphenation pattern file with any specific
variant of the same language.
The problem is real also in English that has several variant names and
pattern files. The gloss-english.ldf is very clear about this: if the
variant name involves small changes such as the way of typesetting the
current date but does not involve pattern variants, the variant option
(english, american, usenglish, US,english) just sets suitable boolean
switches (toggles) to do the job; but variants usenglishmax, british,
uk, britishmax, australian, newzeland, for example, require different
hyphenation pattern files. All these switches are valid for xetex, but
are excluded with luatex through such statements as \ifluatex\else...\fi.
Gloss-greek.ldf that does not have any test for checking the luatex
engine, has only statements valid for xetex, and if some document
containing a specification for the Greek language is typeset with
luatex, the various \l@*** commands are undefined and the three Greek
variants are all equated to nohyphenation.
You know that I am trying to set up Latin to be configured for several
variants and I need to use at least three different pattern files for 4
language variants (modern, medieval, classic, liturgical) that do not
imply simple typesetting spelling changes. I cannot manage the variant
settings for more than modern vs medieval that share the same patterns
set, and I cannot select the proper pattern set for classic or
liturgical Latin by means of "variant=..." options as it would be
natural. I can only specify those variants by means of new individual
language names and new gloss-<language>.ldf files. But it is always
Latin, simply a different variety. The same would be for English or
Greek: it would be the same language with different varieties.
It would be necessary to have a *new* keyword for \PolyglosssiaSetup
such that specifies one or more different sets of synonyms or hyphen
names that allow luatex to load at the *beginning* of the execution of
the .ldf file all the pattern variants, so that the various \l@***
language counter values are defined and the same tests valid for xetex
produce the same results also with luatex. At least English, Greek, and
Latin language description files could be slightly modified to produce
the correct line breaks with any language variety: i recall the language
is the same, its spelling, its typographical regulations, its
hyphenations rules might be different, bu the language is and remains
the same. In TeX jargon these variants are NOT dialects of one mater
language.
The luatex policy of not loading pattern file for unused languages
remains valid, but at least the same language has available all its own
hyphenations variants, even if they are not all used in a given
document. There is a little waste of memory, but there is not that huge
waste of memory connected to the 80 or so languages handled by xetex and
pdftex, that contain all their hashed versions in their format files.
Thank you for your attention.
Claudio Beccari
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://tug.org/pipermail/lualatex-dev/attachments/20160411/2ec03582/attachment.html>
More information about the lualatex-dev
mailing list