-
Notifications
You must be signed in to change notification settings - Fork 31
Deprecated Arabic presentation forms considered helpful
Some Arabic group of letters, ArabicPresentation Forms-B (FB50-FDFF) or Arabic Presentation Forms-A (FE70-FEFC), have a proper code point as group of letters. This is proposed for Arabic diacritics, contextual forms of letters, ligatures or letter variants needed for some languages. For example diacritic in VEH ﭪ (U+FB6A), contextual AIN ﻌ (U+FECC), ligatures ﳌ (U+FCCC) or ﶊ (U+FD8A) etc...
The presentation forms are present only for compatibility with older standards, and are not currently needed for coding text. They are now deprecated by Unicode (reference needed).
However, some author might wish to use these forms for cases where such as:
-
Force joining letters in some old tools where joining doesn't occur, or when rendering tools don't join letters marked-up separately (e.g. as colored letters). vs.
-
Stylistic need, when some font doesn't render some optional ligatures, or need for some calligraphic letters (...). vs. where Meem+Heh+Meem ligature (U+FD8A ) is used.
-
Mandatory ligatures may not occur with marked letter in some fonts (marked Lamalef is written Lam and Alef in 'Traditonal Arabic' and may be other fonts). vs.
-
etc. @@
Pro
- Color different letters/parts of a word.
- Show isolated letters for some purpose (logical memory e.g. "...In memory, W3C المغرب is stored W3C ا ﻟ ﻣ ﻐ ﺮ ب in typing order..." for some pedagogical reason, show separate ligature letters.
- Force ligatures for aesthetic or some reason, when fonts doesn't permit.
- Example: Lam+Meem have same color, when each letter (or glyph) has different color. Compare with
- Force mandatory ligature not done because of marks, case 3 above
- Use a tool which doesn't join letters, case 1 above
- @@...
Cons
- Presentation Forms-A codes almost ligatures. However, ligature is not a char but a writing style for joining letters. So it can be applied to almost any group of letters.
- Cannot encode all ligatures
- Cannot compare strings with ligatures, unless a known and standard way to compose/decompose all ligatures
- @@...