[Lazarus] Arabic beta tester for SynEdit needed

Zaher Dirkey parmaja at gmail.com
Sat Dec 8 16:25:06 CET 2012


I see there is a unit, and you are use it SynEditTextBidiChars.

So What for USE_UTF8BIDI_LCL? and this units FreeBidi and utf8bidi?


On Sat, Dec 8, 2012 at 4:49 PM, Martin <lazarus at mfriebe.de> wrote:

>  On 08/12/2012 14:06, Zaher Dirkey wrote:
>
> From the first trying, Wow it works :D, but i need more tests.
>
>
> Main question at current are the ligatures, with the long line.
>
> 1) Acceptable?
>
> 2) BEhaves as described: the editor treads the long-line, as the 2nd char
> in the ligature, (if you delete it, it will delete the correct half of the
> ligature)
> (At least windows, with extra-char-spacing=1)
>
>
>
>
> On Sat, Dec 8, 2012 at 3:35 PM, Zaher Dirkey <parmaja at gmail.com> wrote:
>
>> Hi,
>> Good feature for me, but my question (Off Topic), why you interested in
>> this feature while there is no many Arabic/RTL Lazarus users?
>>
>> For me, I will try to test it, and i like to look at the code too.
>>
>>
>> On Fri, Dec 7, 2012 at 12:53 AM, Martin <lazarus at mfriebe.de> wrote:
>>
>>> A while ago, I started adding support for mixed LTR/RTL  text in SynEdit.
>>>
>>> The actual display of RTL text now works (that is, if you have some
>>> arabic chars in the text, they display RTL, and the caret moves accordingly
>>> / caret between RTL and LTR always means caret at LTR).
>>> uf8 LTR/RTL markers are not supported. This is absolute basics only.
>>>
>>> Unfortunately with RTL came other unicode features, that sofar no one
>>> had missed. Those are at the very least
>>> - combining codepoints
>>> - ligatures
>>> - maybe reordering of codepoints.
>>> - other?
>>> They are tasks of different extent. And I need to find out what is
>>> mandatory, and what optional. So I can then decide, what does fit into my
>>> schedule.
>>>
>>> The current state is:
>>> - combining: Only Arabic has been done (but they should be complete). So
>>> none Arabic RTL will not work.
>>> - ligatures: see below
>>> - reordering: not researched, hopefully optional.
>>>
>>> "work"
>>> means, that the text is stable (except ligatures, only with workaround),
>>> and does not expand/shrink, when selecting text, or moving the caret. Also
>>> that the caret will be at the correct pos. A newly inserted char will be
>>> where the caret was. Can be tested by hitting the "end" key, and see if the
>>> caret is at the end of visual text. If SynEdit thinks the text is
>>> shorter/longer than the actual painted display, then there is an issue.
>>>
>>> ligatures:
>>> The editor does not handle ligatures yet. So it calculates 2 screen
>>> cells, when only one is needed. However a stable "workaround" exists
>>> (currently depends on config)
>>>
>>> On windows and windows only (others will be done, if that turns out to
>>> be any good). In Options / Editor / Display / set "Extra CHAR spacing" to 1
>>> This will slightly widen the script, ignore that, its temporary.
>>> Requires a proper monospaced font. (Deja vu mono)
>>>
>>> What it will do: It will tell windows, that the ligature is expected to
>>> cover 2 display cells.
>>> Display: Arabic text is a script, glyphs are connected by a continuous
>>> line. The ligature will be in one cell, the next cell will be empty, except
>>> for the connecting line.
>>> Editing: The caret can be at either cell. Each cell stands for one of
>>> the 2 chars in the ligature. So the 2nd char can be edited, if the caret is
>>> at the empty cell
>>>
>>> ------------------
>>> 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".
>>>
>>> If so, then:
>>> - it can be fixed to work without the extra char spacing
>>> - on gtk, carbon, qt (well at least I hope)
>>> - combining can be added for other languages.
>>>
>>> If not, well I don't know yet.
>>>
>>>
>>  Best Regards
>> Zaher Dirkey
>>
>>
>
>
> --
> I am using last revision of Lazarus, FPC 2.6 on Windows XP SP3
>
> Best Regards
> Zaher Dirkey
>
>
>
> --
> _______________________________________________
> Lazarus mailing listLazarus at lists.lazarus.freepascal.orghttp://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
>
>
>
> --
> _______________________________________________
> Lazarus mailing list
> Lazarus at lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
>
>


-- 
I am using last revision of Lazarus, FPC 2.6 on Windows XP SP3

Best Regards
Zaher Dirkey
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20121208/70c92021/attachment-0003.html>


More information about the Lazarus mailing list