[sword-devel] report of Unicode support on Win2K vs. XP

Chris Little sword-devel@crosswire.org
Sun, 8 Jul 2001 17:25:56 -0700

I've had a little time to test out Windows XP RC1 and compare it with Windows 2000 on the rendering of Unicode in Sword.  Windows XP is much better, but still imperfect.

Combining diacritics work fairly well in XP.  You can now combine multiple combining diacritics with a single letter, so Hebrew cantillation marks and vowel points can be placed on the same letter.  In Win2K, the second (and subsequent) combining mark is rendered following the letter under a space.

In Greek, the problems with Microsoft's implementation become obvious.  Multiple combining marks get added atop one another.  Accents and breathing marks get lumped into a single incomprehensible blob.  The only solution to this problem seems to be using the pre-composed forms available in Unicode, though there is much poorer font support for these.  Pre-composed characters will also work immediately for users of Win2K and previous, but this option is not available for Hebrew because there are no pre-composed Hebrew characters.

My other big gripe with WinXP's Unicode support is that it still doesn't correctly recognize Syriac as a right-to-left language.  (There's a Peshitta on the beta site now.)  I'm a little disappointed because WinXP was supposed to have full Syriac support.  (billg will be hearing from me on this one!)

WinXP does have an improved implementation of the Unicode bidirectional algorithm.  In Win2K, the algorithm switched directions when it arrived at a character belonging to a codepage headed in the opposite direction.  In XP, the algorithm does the same, but now backs up one character if the current character is a space.  Check the RNKJV module for an example of this.  Here, yod-he-vav-he is used in an otherwise roman-script text.  On Win2K it appears flush against the following word with 2 spaces preceding it.  On WinXP it is rendered correctly, surrounded on either side by one space.

XP is easily going to be the most important version of Windows since... um... Win2K, not Win95 like they would have you believe.  As with nearly everything from Microsoft, it's a minor evolutionary step, not a revolutionary one.  It's basically Win2K with themes and lots of new ways built in for Microsoft to invade your privacy, plus (most importantly) a year's worth of fixes to things they did wrong in Win2K.