[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: inverse Bidi



On Wed, 29 Aug 2001, Chahine M. Hamila wrote:

> I finally located the implementation of inverse Bidi in the ICU library
> (yeah, it wasn't that hard to find, but someone had to move a few
> fingers and strike some keys...).

Exact location?

> Some tests need to be done (anyone has some experience with this
> algorithm?) to see how handy it is, and more importantly, though this
> shouldn't be a priority compared to other tasks, one need to write the
> precise rules of that inverse bidi algorithm in case someone would
> need them.

Some importat notes:

1. Inverse Bidi is not unique. You can't guarantee the same original
string after doing Bidi and then Inverese Bidi.

2. Becuase of that, Inverse Bidi should be locale dependent. I have still
not seen the ICU code, but it should mainly be Hebrew-oriented. We may
need different configurations for Arabic, Persian, etc.

3. Not only locale dependent, we need Inverse Bidi to be also
configurable. Different applications in a single locale (say a simple text
editor vs a symbolic computation package with Arabic support) need
different configurations of Inverse Bidi.

> - ICU should be used as a basis for bidi Arabization (its license is
> compatible with BSDish, LGPLish and even GPLish licenses),

ICU is very big. Compare its footprint with that of FriBidi. That will
make problems as soon as you want to port to platforms with limited
resources (say Linux on handhelds). As soon as their change of the
lincense, I was considering a switch, but I then found about the size...

I recommend studying the algorithm in ICU, and then reimplementing it in
the Fribidi infrastructure, or something small like that.

roozbeh