[XeTeX] Conflict between xunicode and fontspec?

Arthur Reutenauer arthur.reutenauer at normalesup.org
Wed Feb 6 22:06:55 CET 2008


> Indeed. I have not yet considered cases like "test !" and "test~!". 
> Currently polyglossia expects the input to be "test!" and inserts the 
> appropriate kerning, just as it was done in antomega by means of OTPs.

  Actually there is an interesting issue here, and it can be connected
with another recent thread, the one about soft hyphen: I think some of
these characters should be handled on a lower level than
language-specifics packages, probably in the format itself.

  Such characters include the Unicode soft hyphen, as has already been
discussed, and various space characters, as you and Adam pointed out,
including the ISO 8859 no-break space (Unicode U+00A0 NO-BREAK SPACE).
I'm convinced that handling the latter as equivalent to the usual TeX
tie (~) is the right thing to do here, that is, making U+00A0 active and
defining it as \penalty10000\space or something like that (just like ~
in every TeX dialect).  Of course, active characters have always had a
rather bad reputation in TeX, and I certainly hope you won't be tempted
to make some innocuous punctuation marks active in gloss-french, for
example, as it is done in Babel's french.ldf!  But for some particular
Unicode characters, it seems advisable and the most straightforward
thing to do; I would say most characters with General Category C (U+00AD
SOFT HYPHEN is one of them, having gc=Cf), as well as some space
characters (space is anyway an active thing in TeX, if you think about it).

  Anyway, what I wanted to stress here was that it might be advisable to
think in two steps: first, handle the characters according to their
semantics as defined by Unicode (this would be XeLaTeX' job) and then,
only, make some fine language-dependent typographical treatment
(Polyglossia's job), like (in French) modifying the length of the spaces
according to the character that follows them -- but this is only a
secondary issue: after all, if a user explicitely inputs a no-break
space before an exclamation mark, he shouldn't expect that space to be
treated on a different basis than other no-break spaces if Polyglossia
doesn't instruct him to do so; instead, it is quite legitimate for
Polyglossia-French to require users to type the exclamation marks just
after the last word with no space (that is, the user should not try and
be smarter than the system, so to say).

  What do you think?

> At this stage only "basic" language-specific features are implemented. I 
> have yet to look into more details at the "Pro" version of French 
> support in Babel.

  If you mean frenchpro.sty, I suppose you're aware that it is something
different from frenchb.ldf, the French support file for Babel; which
means it is not the default support file most users will be used to.

	Arthur


More information about the XeTeX mailing list