Abdelrazak Younes wrote:
Dov Feldstern wrote:

I think that this is unnecessary, at least at the moment. The (a?) Bidi algorithm has already been implemented in LyX, and it works well. It's true that Qt and Fribidi do this, but LyX already does it, too.


Not really, no. At least not reliably.

See below.



Also, I'm not sure that we could rely on Qt or Fribidi. These will work if you output an entire line of text. But what happens when you don't output the entire line at once? What if you have an inset in the middle, or an image? Will Qt also manage in this case?


Sure, we just have to cut the lines in integral strings (between two inset for example) and that's it, Qt will manage the ordering perfectly in between the insets.

Okay, that may work.

It may, but I'm not sure that it will. And again, I just don't think that it's necessary, I think LyX is already doing it well enough.


Maybe for Hebrew but Arabic support looks completely wrong and I managed to crash LyX easily because of bad unicode codepoints (have a look at encoding.C to see what I mean).

Yes, Arabic is much more complicated, because you have the issue of "shaping", and that's what encoding.C mainly deals with, I think.

(BTW, how do you set up LyX to work with Arabic? I'd be willing to try it out if I knew how to set it up --- I can read Arabic.)

For Hebrew, however, the bidi algorithm works very well. So the problems in Arabic probably stem from the shaping issue, more than from the Bidi issue. Therefore, I think that unless we can prove that the Bidi algorithm as implemented in LyX really is problematic, we should just stick with it.

Dov

Reply via email to