[Lazarus] Arabic beta tester for SynEdit needed

Martin lazarus at mfriebe.de
Fri Dec 7 04:25:14 CET 2012


On 07/12/2012 02:38, Mattias Gaertner wrote:
> On Thu, 06 Dec 2012 22:53:12 +0000
> Martin <lazarus at mfriebe.de> wrote:
>> [...]
>> I need feedback from people who actually speak (or at least read and
>> write) Arabic. I need to know, if the above situation is "useable".
> Attached is a small example text and a screenshot showing, how Firefox
> with font "serif"renders it, how synedit with "Courier New" renders it
> and how synedit with "monospace" renders it.
>
> Firefox and the "monospace" synedit shows only one
> ligature (??), combined of the two codepoints alif ? and lam ?.
> Firefox allows to select the two independently.
>
> The "courier new" font shows another ligature:
> The ??? are three letters in "monospace", while with "courier new" it
> shows the two rightmost combined as one.
>

Was the synedit picture taken with extra char spacing? Because without 
that, you get the wrong behaviour (select line, char by char)

I know how it should be shown ideally.

The question is how far away from ideal would still be useful? And that 
I can not tell for a script, that I do not use at all.
Someone once said, some editors display the ligatures, as 2 chars. And 
that would be accepted by many people. But I can not judge that.

The proper ligature handling is a lot more work. And it depends on the 
font (or it may at least) On windows there is an API, that would allow 
to get that info. However if not carefully done, it may have effect on 
the speed of synedit (quite possible noticeable).
On others, I wouldn't even know where to look for such an API. But 
little point, until SynEdit is ready to use an external API in this 
place. (That is it does not call it excessively)

As for placing the caret in the middle of a char, that would require 90% 
of the work to render proportional fonts (on the list, but not now)

Below is with extra char spacing, and you can see a stretched bit of 
horizontal line



Without the etra char spacing, there is a gap, between the RTL and the 
LTR spaces atthe end (use visible spaces, r type real latin text at the 
end).
Delete half the ligature, and it will go away, causing the LTR text to 
move, even so the RTL has still the same length (ligature replaced by 
remaining normal char)

So at the moment for synEdit the ligature are 2 chars, they must take to 
cells on screen.

The  point is. It might be some time until I can add proper ligature 
handling.
But I can try to get the current behaviour without the extra char 
spacing (if that current behaviour is of any use).
It might be possible to force the splitting of the ligature, I do not 
know that for sure. Also GTK2 will probably split it, others I do not 
know. (GTK2, will have to pain every char on its own.)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20121207/33937c7d/attachment-0003.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gjadibdc.png
Type: image/png
Size: 521 bytes
Desc: not available
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20121207/33937c7d/attachment-0003.png>


More information about the Lazarus mailing list