ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* Arabic shaping
@ 2009-04-04 16:20 Khaled Hosny
  2009-04-05  9:16 ` Hans Hagen
  0 siblings, 1 reply; 3+ messages in thread
From: Khaled Hosny @ 2009-04-04 16:20 UTC (permalink / raw)
  To: mailing list for ConTeXt users


[-- Attachment #1.1: Type: text/plain, Size: 535 bytes --]

Currently 'font-ota.lua' hard codes the Arabic shaping properties,and it
doesn't seem to be complete  (e.g. the ڤ as in أڤاست is not joined), I
think such information belong to 'char-def.lua' and should be derived
from UCD, which provide 'ArabicShaping.txt[1]', covering Arabic, Syriac
and N'Ko scripts which all need the same shaping as Arabic.

[1]http://unicode.org/Public/5.1.0/ucd/ArabicShaping.txt

Regards,
 Khaled


-- 
 Khaled Hosny
 Arabic localiser and member of Arabeyes.org team
 Free font developer

[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

[-- Attachment #2: Type: text/plain, Size: 487 bytes --]

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : https://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Arabic shaping
  2009-04-04 16:20 Arabic shaping Khaled Hosny
@ 2009-04-05  9:16 ` Hans Hagen
  2009-04-05 14:48   ` Khaled Hosny
  0 siblings, 1 reply; 3+ messages in thread
From: Hans Hagen @ 2009-04-05  9:16 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Khaled Hosny wrote:
> Currently 'font-ota.lua' hard codes the Arabic shaping properties,and it
> doesn't seem to be complete  (e.g. the ڤ as in أڤاست is not joined), I
> think such information belong to 'char-def.lua' and should be derived
> from UCD, which provide 'ArabicShaping.txt[1]', covering Arabic, Syriac
> and N'Ko scripts which all need the same shaping as Arabic.

indeed this info will be moved to char def at some point (same for some 
cjk properties) but for the moment this is easier to hack; if you have 
patches, just let us know (remider for idris: you also had some, these 
symbols showing up in black in tre tracer ..)

Hans


-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
      tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
                                              | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : https://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Arabic shaping
  2009-04-05  9:16 ` Hans Hagen
@ 2009-04-05 14:48   ` Khaled Hosny
  0 siblings, 0 replies; 3+ messages in thread
From: Khaled Hosny @ 2009-04-05 14:48 UTC (permalink / raw)
  To: mailing list for ConTeXt users


[-- Attachment #1.1.1: Type: text/plain, Size: 1118 bytes --]

On Sun, Apr 05, 2009 at 11:16:55AM +0200, Hans Hagen wrote:
> Khaled Hosny wrote:
>> Currently 'font-ota.lua' hard codes the Arabic shaping properties,and it
>> doesn't seem to be complete  (e.g. the ڤ as in أڤاست is not joined), I
>> think such information belong to 'char-def.lua' and should be derived
>> from UCD, which provide 'ArabicShaping.txt[1]', covering Arabic, Syriac
>> and N'Ko scripts which all need the same shaping as Arabic.
>
> indeed this info will be moved to char def at some point (same for some  
> cjk properties) but for the moment this is easier to hack; if you have  
> patches, just let us know (remider for idris: you also had some, these  
> symbols showing up in black in tre tracer ..)

OK, the attached patch should added all Arabic entries from
ArabicShaping.txt, I tested some Arabic, Persian and Urdu samples and
all seem to be OK. This also fixes a small bug, 0629 (TEH MARBUTA) were
marked as dual joining while is is right joining only.

Regards,
 Khaled


-- 
 Khaled Hosny
 Arabic localiser and member of Arabeyes.org team
 Free font developer

[-- Attachment #1.1.2: font-ota.lua.diff --]
[-- Type: text/x-diff, Size: 5032 bytes --]

--- font-ota.lua.old	2009-04-05 16:37:45.000000000 +0200
+++ font-ota.lua	2009-04-05 16:41:07.000000000 +0200
@@ -111,23 +111,65 @@
 local zwj  = 0x200D
 
 local isol = {
-     [0x0621] = true, [zwnj] = true,
+    [0x0600] = true, [0x0601] = true, [0x0602] = true, [0x0603] = true,
+    [0x0608] = true, [0x060B] = true, [0x0621] = true, [0x0674] = true,
+    [0x06DD] = true, [zwnj] = true,
 }
 
 local isol_fina = {
-    [0x0622] = true, [0x0623] = true, [0x0624] = true, [0x0625] = true, [0x0627] = true, [0x062F] = true,
-    [0x0630] = true, [0x0631] = true, [0x0632] = true,
-    [0x0648] = true, [0x0671] = true, [0x0698] = true,
-    [0xFEF5] = true, [0xFEF7] = true, [0xFEF9] = true, [0xFEFB] = true,
+    [0x0622] = true, [0x0623] = true, [0x0624] = true, [0x0625] = true,
+    [0x0627] = true, [0x0629] = true, [0x062F] = true, [0x0630] = true,
+    [0x0631] = true, [0x0632] = true, [0x0648] = true, [0x0671] = true,
+    [0x0672] = true, [0x0673] = true, [0x0675] = true, [0x0676] = true,
+    [0x0677] = true, [0x0688] = true, [0x0689] = true, [0x068A] = true,
+    [0x068B] = true, [0x068C] = true, [0x068D] = true, [0x068E] = true,
+    [0x068F] = true, [0x0690] = true, [0x0691] = true, [0x0692] = true,
+    [0x0693] = true, [0x0694] = true, [0x0695] = true, [0x0696] = true,
+    [0x0697] = true, [0x0698] = true, [0x0699] = true, [0x06C0] = true,
+    [0x06C3] = true, [0x06C4] = true, [0x06C5] = true, [0x06C6] = true,
+    [0x06C7] = true, [0x06C8] = true, [0x06C9] = true, [0x06CA] = true,
+    [0x06CB] = true, [0x06CD] = true, [0x06CF] = true, [0x06D2] = true,
+    [0x06D3] = true, [0x06D5] = true, [0x06EE] = true, [0x06EF] = true,
+    [0x0759] = true, [0x075A] = true, [0x075B] = true, [0x076B] = true,
+    [0x076C] = true, [0x0771] = true, [0x0773] = true, [0x0774] = true,
+    [0x0778] = true, [0x0779] = true,
 }
 
 local isol_fina_medi_init = {
-    [0x0626] = true, [0x0628] = true, [0x0629] = true, [0x062A] = true, [0x062B] = true, [0x062C] = true, [0x062D] = true, [0x062E] = true,
-    [0x0633] = true, [0x0634] = true, [0x0635] = true, [0x0636] = true, [0x0637] = true, [0x0638] = true, [0x0639] = true, [0x063A] = true,
-    [0x0640] = true, -- tadwil
-    [0x0641] = true, [0x0642] = true, [0x0643] = true, [0x0644] = true, [0x0645] = true, [0x0646] = true, [0x0647] = true, [0x0649] = true, [0x064A] = true,
-    [0x067E] = true, [0x0686] = true, [0x06AF] = true, [0x06A9] = true, [0x06CC] = true,
-    [zwj] = true,
+    [0x0626] = true, [0x0628] = true, [0x062A] = true, [0x062B] = true,
+    [0x062C] = true, [0x062D] = true, [0x062E] = true, [0x0633] = true,
+    [0x0634] = true, [0x0635] = true, [0x0636] = true, [0x0637] = true,
+    [0x0638] = true, [0x0639] = true, [0x063A] = true, [0x063B] = true,
+    [0x063C] = true, [0x063D] = true, [0x063E] = true, [0x063F] = true,
+    [0x0640] = true, [0x0641] = true, [0x0642] = true, [0x0643] = true,
+    [0x0644] = true, [0x0645] = true, [0x0646] = true, [0x0647] = true,
+    [0x0649] = true, [0x064A] = true, [0x066E] = true, [0x066F] = true,
+    [0x0678] = true, [0x0679] = true, [0x067A] = true, [0x067B] = true,
+    [0x067C] = true, [0x067D] = true, [0x067E] = true, [0x067F] = true,
+    [0x0680] = true, [0x0681] = true, [0x0682] = true, [0x0683] = true,
+    [0x0684] = true, [0x0685] = true, [0x0686] = true, [0x0687] = true,
+    [0x069A] = true, [0x069B] = true, [0x069C] = true, [0x069D] = true,
+    [0x069E] = true, [0x069F] = true, [0x06A0] = true, [0x06A1] = true,
+    [0x06A2] = true, [0x06A3] = true, [0x06A4] = true, [0x06A5] = true,
+    [0x06A6] = true, [0x06A7] = true, [0x06A8] = true, [0x06A9] = true,
+    [0x06AA] = true, [0x06AB] = true, [0x06AC] = true, [0x06AD] = true,
+    [0x06AE] = true, [0x06AF] = true, [0x06B0] = true, [0x06B1] = true,
+    [0x06B2] = true, [0x06B3] = true, [0x06B4] = true, [0x06B5] = true,
+    [0x06B6] = true, [0x06B7] = true, [0x06B8] = true, [0x06B9] = true,
+    [0x06BA] = true, [0x06BB] = true, [0x06BC] = true, [0x06BD] = true,
+    [0x06BE] = true, [0x06BF] = true, [0x06C1] = true, [0x06C2] = true,
+    [0x06CC] = true, [0x06CE] = true, [0x06D0] = true, [0x06D1] = true,
+    [0x06FA] = true, [0x06FB] = true, [0x06FC] = true, [0x06FF] = true,
+    [0x0750] = true, [0x0751] = true, [0x0752] = true, [0x0753] = true,
+    [0x0754] = true, [0x0755] = true, [0x0756] = true, [0x0757] = true,
+    [0x0758] = true, [0x075C] = true, [0x075D] = true, [0x075E] = true,
+    [0x075F] = true, [0x0760] = true, [0x0761] = true, [0x0762] = true,
+    [0x0763] = true, [0x0764] = true, [0x0765] = true, [0x0766] = true,
+    [0x0767] = true, [0x0768] = true, [0x0769] = true, [0x076A] = true,
+    [0x076D] = true, [0x076E] = true, [0x076F] = true, [0x0770] = true,
+    [0x0772] = true, [0x0775] = true, [0x0776] = true, [0x0777] = true,
+    [0x077A] = true, [0x077B] = true, [0x077C] = true, [0x077D] = true,
+    [0x077E] = true, [0x077F] = true, [zwj] = true,
 }
 
 local arab_warned = { }

[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

[-- Attachment #2: Type: text/plain, Size: 487 bytes --]

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : https://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-04-05 14:48 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-04-04 16:20 Arabic shaping Khaled Hosny
2009-04-05  9:16 ` Hans Hagen
2009-04-05 14:48   ` Khaled Hosny

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).