[Fribidi-discuss] Re: BiDi WINE status and fribidi

Dov Grobgeld dov at imagic.weizmann.ac.il
Fri Aug 23 00:22:07 EST 2002


On Fri, Aug 23, 2002 at 07:40:43AM +0300, Shachar Shemesh wrote:
> Omer Zak wrote:
> [stuff deleted]
>
> Quoting your relevant web page:
> 
> 
>     Is this a fork?
> 
> Unfortunately, yes - for the time being. It is my hope that Dov Grobgeld 
> will incorporate the changes made in this version into the next 
> mainstream version of his FriBidi package.

This quote is really old, before FriBidi was put on SourceForge where
it is now mainly developed by Behdad. I understand that Behdad accepted
Omer's changes to his full satisfaction. (Which is more that I did at
the time... 8-/)
> 
> >There are some Unicode code points, which cannot be represented in 16
> >bits, but I believe that WINE can live without supporting those code
> >points (which would otherwise require surrogates in UTF-16).
> >
> That, I'm afraid, is where you are wrong. These codepages are crucial 
> for far east support, and Wine in general cannot live without them. What 
> I am willing to do is add surrogate support to fribidi, however. This 
> shouldn't pose TOO much of a problem, but it means #ifdefs in the code.

Do you mean UTF-16 or UCS2? Internally FriBidi uses UCS4. In
order to use any other charset you have to convert it before you pass
it to fribidi. So I don't really understand the problem.
> 
> It requires an override. The way Windows do it is:
> A. Badly. I couldn't get it to work at all at first, and then work in a 
> most bizar way.
> B. Providing an array the size of the string specifying overrides (i.e. 
> - the third character is a Hebrew character, no matter what the Unicode 
> tables say). As you need such an array anyways, and as even the Windows 
> function fills this array in after reordering with the missing data, you 
> can use the user supplied array for your own processing. It is this 
> requirement that should be relatively easy to support (but will require 
> interface changes)-:

The first thing that is done by fribidi when passed a string is to 
lookup the character classification. This information is then stored
in a run length encoded list. It would be quite simple to split out
this calculation into a separate function. It would then be possible
to provide an additional function that receives an array of override
classifications. Feel free to try to do it myself, as the time that I 
can spend on it is close to zero. But perhaps Behdad has some spare
time. ;-)

Regards,
Dov

>                 Shachar
> 
> 
> 
> 
> -------------------------------------------------------
> This sf.net email is sponsored by: OSDN - Tired of that same old
> cell phone?  Get a new here for FREE!
> https://www.inphonic.com/r.asp?r=sourceforge1&refcode1=vs3390
> _______________________________________________
> Fribidi-discuss mailing list
> Fribidi-discuss at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/fribidi-discuss




More information about the FriBidi mailing list