Re: Unicode 4.01 bidi type changes
Beni Cherniavsky <[email protected]>
| Newsgroups | gmane.comp.internationalization.fribidi |
|---|---|
| Message-ID | <[email protected]> |
Eran Tromer wrote:
> Hi,
>
> Unicode 4.01 changed the type of HYPHEN-MINUS and PLUS from ET to ES,
> and changed the type of SOLIDUS (slash) from ES to CS:
> http://www.unicode.org/versions/Unicode4.0.1/
> http://www.unicode.org/Public/4.0-Update1/UnicodeData-4.0.1.txt
> You can diff the latter against:
> http://www.unicode.org/Public/4.0-Update/UnicodeData-4.0.0.txt
>
Thanks for the info.
> Does this affect Fribidi? Is this likely to affect rendering of existing
> texts?
>
Yes, it can definitely affect ordering of texts containing these
characters. Fribidi should be updated with the latest database (no
manual code changes needed).
Diff gives the following list of bidi category changes. I give examples
of affected texts and/or comments where I have ones.
{PLUS SIGN,HYPHEN-MINUS}: ET -> ES
:Logical: HEBREW-10
:Old visual: -10WERBEH
:New visual: 10-WERBEH
At last! The old behavior confused so many users! However this
also breaks stand-alone numbers:
:Logical: HEBREW -10
:Old visual: -10 WERBEH
:New visual: 10- WERBEH
?!? How are we to write signed numbers in RTL text now?!? LRM?
Also ugly... I'm not sure it's a good idea. And I can't see the
rationale for PLUS SIGN at all.
This is a **really big change**. I suppose every third big RTL
text out there will be affected.
SOLIDUS: ES -> CS
:Logical: ARABIC 27/4
:Old visual: 4/27 CIBARA
:New visual: 27/4 CIBARA
Don't know how much this makes sense - can any Arabic speaker
comment?
SOFT HYPHEN: ON -> BN
It is now OK to position it anywhere or omit it altogether?
Don't ask me why...
FRACTION SLASH: ON -> CS
:Logical: RTL 3/4 (The ``/`` being a FRACTION SLASH)
:Old visual: 4/3 LTR
:New visual: 3/4 LTR
Makes perfect sense. If SOLIDUS was a number separator, FRACTION
SLASH surely deserves to be.
CIRCLED {DIGIT ZERO,...,NUMBER TWENTY}: EN -> ON
PARENTHESIZED {DIGIT ONE,..., NUMBER TWENTY}: EN -> ON
Since they are circled/parenthesized, putting several together
doesn't mean constructing a number from them - (1)(2) is hardly
twelve :-) - so they shouldn't order LTR. Makes sense. Besides,
nobody cares for these chars anyway ;-).
BRAILE PATTERN {BLANK,DOTS-*}: ON -> L
Makes sense for English readers but what if the Braile patterns
represent Hebrew text? Or is Braile written LTR in all languages?
Can anyone shed a light?
INTERLINEAR ANNOTATION {ANCHOR,SEPARATOR,TERMINATOR}: BN -> ON
Yep, annotations' position is meaningful, I suppose.
--
Beni Cherniavsky <[email protected]>
Note: I can only read email on week-ends...