Re: Pango status, arabic support

Karl Koehler <> writes:

> First of all , I did not have much time to check for the 
> last few weeks, so I was really impressed about the progress .
> Some Notes :
> * Speed is much better than before and mostly usable !

Well, I'm glad to hear that it's mostly useable :-) I spent quite a
bit of time on speed, and I'm not sure there is a lot left to get.
There are some improvements that can be made with the Arabic shaper in
particular. Right now the shaper is called individually for each
word, which means that fonts are looked up for each word.

One thing that would help is to cache the font lookup on the
PangoFont. The recently added Thai shaper should provide a good
example of doing this.

> The following are my notes on testtext:
> * page Up/Down is still awfully slow, and it continues
>   after the release of the pageup/down-Key.
>   This is annoying; if it is not possible to improove speed,
>   one should catch the keyup-event and just stop 
>   scrolling :)

I'll have to do some testing to see what the bottlenecks
are for this. It's hard to detect auto-repeat so stopping
on keyup may be a little hard.

> * one can move the cursor vertically out of the
>   frame (!) -- best seen when a big block of
>   arabic text is at the bottom of the frame.

Yes, I've seen this a few times. I need to look at what's
going on.

> * after entering an arabic character afer a space 
>   when in left-to-right-mode,   shaping is not done directly. 
>   This is not good, because it means that you can't see what 
>   you are typing unless the font happens to contain characters in
>   the positions 0x60C .. 0x66A  ( This is not the case for
>   any mulefont or the langbox-font ).
>   Anyway, the shaper is called when typing in case
>   the cursor _is already in between_  arabic letters.
>   In right-to-left mode, everything seems ok .

I'm not sure exactly what this is. Is the arabic shaper not
getting called at all for the isolated character?

> * Sometimes a scrollbar is introduced even in wrap-mode.

I know of two non-bug cases when this occurs

 -  The scrollbar will temporarily be introduced when resizeing
    the text widget narrower until the entire document is rewrapped.

 - If a line of text cannot be broken narrow enough to fit the
   the area width then a scrollbar will be added.

Other cases are bugs.


> Last, but not least, I ( hopefully ) improved the arabic module
> ( user visible: supress one unwanted join, mainly ).
> It is , again, available at

I'll try to incorporate this into a new Pango release

Thanks for the testing,

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