[XeTeX] Ancient Greek hyphenation
Bruno Voisin
bvoisin at mac.com
Sat Apr 21 00:39:36 CEST 2007
Le 20 avr. 07 à 20:21, Alexej Kryukov a écrit :
> That's why, I think, instead of creating a completely new xbabel the
> community should focus on improving existing Babel modules by removing
> some features inherited from very old times which now bring
> unnecessary
> complexity into typesetting documents not only with XeTeX, but even
> with
> standard (pdf)latex. Just one example: the French language module
> currently assumes that French guillemets are unavailable in the
> default
> Latin encoding and attempts to take them from very old Cyrillic fonts,
> thus making impossible mixing, say, French and Russian in the same
> document... But, of course, this is a completely different story.
To provide a more extreme point of view:
Probably for historical reasons, babel couples together for each
language several functions which should be kept independent:
- Translating LaTeX's fixed strings such as "chapter", "section",
"table of contents", and so forth.
- Selecting the appropriate hyphenation pattern.
- Adapting LaTeX's typographic conventions to the supposed norm of
each language. For example, in French putting a space before "!",
"?", ":", ";", making the space after "." at the end of a sentence a
normal space, making the space between points in an ellipsis larger
than in English to get "..." and not "…", and so forth. Similarly,
also in French using an en-dash before each item in an itemized list,
whatever the level of the list (list, list within list, list within
list within list, ...), suppressing inter-item spacing, and so forth.
- Selecting a specific font, when LaTeX's Roman fonts aren't
appropriate for a given language.
It was probably appropriate and useful to provide all these functions
together at the time babel was the first and only available system
for tweaking LaTeX's American-English-oriented output to other
languages. But now, with many more fonts available, a number of which
can now take care of the "intelligent" tasks once devoted to LaTeX,
and with LaTeX adopted in many more countries and for many more
alphabets, I think it is time to make babel more flexible, to
separate the above functions or at least to provide the user a way to
select only some of them.
For example, again for French, while I think most people agree about
spacing around "?", "!", ";", ":", ".", there is much less consensus
about the way lists are formatted, or about the supposed norm
(promoted by babel) according to which family names (i.e. surnames)
should be typed in small caps. Personally I consider these supposed
norms just downright ugly.
Or, as you just said, the French module does take some initiatives
regarding fonts: you mention the guillemets, but there is also the
ellipsis. Babel insists on building \dots from a series of dots
separated by kern, even if there are fonts like Lucida which do
include an ellipsis natively.
In particular, it would be nice to have a switch in babel allowing to
activate translation of fixed strings and selection of hyphenation
pattern, but none of the other initiatives babel is taking. For
French babel does include switches for some of its initiatives (like
\noextrasfrench, \NoAutoSpaceBeforeFDP, \FrenchListSpacingFalse), but
they do not inhibit all of these initiatives.
Whether all the above can be achieved based on the current babel, I
don't know. I tend to think it can't, that babel's original design is
inherently flawed with modern TeX systems (especially XeTeX), and
that starting over from scratch is probably the better way forward. I
hope I'm wrong.
Bruno Voisin
More information about the XeTeX
mailing list