Arabic Components

Many of the wrong components of the glyphs I notice, but I forgot to recall them, postpone this topic and get back when I’m working on another font.

This is one of the mistakes that I faced
This is the correct configuration:
veh-ar+dotbelow-ar=fehDotbelowThreedotsabove-ar

This is the wrong configuration … I do not know what the relationship ?? Veh had nothing to do with Tah:
tah-ar+twodotsabove-ar=fehDotbelowThreedotsabove-ar

Must be the name of the character:
vehDotbelow-ar=veh-ar+dotbelow-ar
vehDotbelow-ar.fina=veh-ar.fina+dotbelow-ar
vehDotbelow-ar.medi=veh-ar.medi+dotbelow-ar
vehDotbelow-ar.init=veh-ar.init+dotbelow-ar

Incorrect:
yehTwodotsbelowHamzaabove-ar
yehTwodotsbelowDotabove-ar

True Name:
alefMaksura-ar+twodotshorizontalbelow-ar=yeh-ar

yehHamzaabove-ar
yehHamzaabove-ar.fina
yehHamzaabove-ar.medi
yehHamzaabove-ar.init

yehDotabove-ar
yehDotabove-ar.fina
yehDotabove-ar.medi
yehDotabove-ar.init

Incorrect:
tehThreedotsdown-ar

True Name:
behThreedotsdownabove-ar=dotlessbeh-ar+threedotsdownabove-ar
behThreedotsdownabove-ar.fina=dotlessbeh-ar.fina+threedotsdownabove-ar
behThreedotsdownabove-ar.medi=dotlessbeh-ar.medi+threedotsdownabove-ar
behThreedotsdownabove-ar.init=dotlessbeh-ar.init+threedotsdownabove-ar

Incorrect:
dalDotbelowTah-ar
dalTwodotsverticalbelowTahabove-ar

True Name:
dal-ar+tahabove-ar=ddal-ar

ddal-ar+dotbelow-ar=ddalDotbelow-ar
ddal-ar+twodotsverticalbelow-ar=ddalTwodotsverticalbelow-ar

There is a problem with anchors Collect these components with each other and watched (hah-ar+twodotshorizontalabove-ar+tahabove-ar) output

Incorrect:
seenThreedotsbelowthreedots-ar

True Name:
seen+threedotsupabove-ar=sheen-ar

sheen+threedotsdownbelow-ar=sheenThreedotsdownbelow-ar

fixed

I think it is fine to use the yeh as a component instead the alefMaksura + dots

the unicode description is ARABIC LETTER TEH WITH THREE DOTS ABOVE DOWNWARDS.

it’s dalDotbelowTahabove-ar now. Again, the unicode description states it is a dal.

I worked on the anchor decomposition just recently, so this might be fixed by now. If it is not fixed in version 751, please send me a sample file.

It is seenThreedotsbelowThreedots-ar now. Again I follow the unicode description.

I’ll see if I should change the names to follow your suggestions instead of the unicode description.

If you looked at the Arabic Fonts you will not find anyone uses the names of the Glyphs in the Unicode.
This is the Arabic Unicode like a fossil record.

1 Like

This the correct components to alef Group

alef-ar=non components
alef-ar.fina=non components

alef-ar.short=non components
alef-ar.fina.short=non components

alefHamzaabove-ar=alef-ar.short+hamzaabove-ar
alefHamzaabove-ar.fina=alef-ar.fina.short+hamzaabove-ar

alefHamzabelow-ar=alef-ar+hamzabelow-ar
alefHamzabelow-ar.fina=alef-ar.fina+hamzabelow-ar

alefWavyhamzaabove-ar=alef-ar.short+wavyhamzaabove-ar
alefWavyhamzaabove-ar.fina=alef-ar.fina.short+wavyhamzaabove-ar

True Name:
alefWavyabove-ar
wavyabove-ar

alefWavyhamzabelow-ar=alef-ar.short+wavyhamzabelow-ar
alefWavyhamzabelow-ar.fina=alef-ar.fina.short+wavyhamzabelow-ar

True Name:
alefWavybelow-ar
wavybelow-ar

alefMadda-ar=alef-ar.short+madda-ar
alefMadda-ar.fina=alef-ar.fina.short+madda-ar

alefWasla-ar=alef-ar.short+wasla-ar
alefWasla-ar.fina=alef-ar.fina.short+wasla-ar

alefFathatan-ar=alef-ar.short+fathatan-ar
alefFathatan-ar.fina=alef-ar.fina.short+fathatan-ar

Notice:
sub alef-ar fathatan-ar by alefFathatan-ar
sub alef-ar.fina fathatan-ar by alefFathatan-ar.fina

highhamzaAlef-ar=alef-ar+highhamza-ar
highhamzaAlef-ar.fina=alef-ar.fina+highhamza-ar

True Name:
highhamza-ar+alef-ar=alefHighhamza-ar

Notice:
its don’t need to alef-ar.short Because Hamza is not at the top alef-ar

alefTwoabove-ar=alef-ar.short+twoabove-ar
alefTwoabove-ar.fina=alef-ar.fina.short+twoabove-ar

alefThreeabove-ar=alef-ar.short+threeabove-ar
alefThreeabove-ar.fina=alef-ar.fina.short+threeabove-ar

rnoon-ar= noonghunna-ar+tahabove-ar
rnoon-ar.fina= noonghunna-ar+tahabove-ar edit: Correction: rnoon-ar.fina= noonghunna-ar.fina+tahabove-ar
rnoon-ar.medi=tteh-ar.medi
rnoon-ar.init=tteh-ar.init

added that

Please edit: rnoon-ar.fina= noonghunna-ar.fina+tahabove-ar

I thought that you meant that.

U+FBBC double vertical bar below

sindhiampersand-ar=hamza-ar+doublebarverticalbelow-ar
sindhipostpositionmen-ar=meem-ar+doublebarverticalbelow-ar

Notice:
hamza-ar and meem-ar arabic origin not sindhi

True Name:
hamzaDoublebar-ar
meemDoublebar-ar
like:lamDoublebar-ar

heh-ar=non components
heh-ar.fina=non components
heh-ar.medi=non components
heh-ar.init=non components

hehHamzaabove-ar=heh-ar+hamzaabove-ar
hehHamzaabove-ar.fina=heh-ar.fina+hamzaabove-ar

tehMarbuta-ar=heh-ar+twodotshorizontalabove-ar
tehMarbuta-ar.fina=heh-ar.fina+twodotshorizontalabove-ar

ae-ar=heh-ar
ae-ar.fina=heh-ar.fina

hehgoal-ar=non components
hehgoal-ar.fina=non components
hehgoal-ar.medi=non components
hehgoal-ar.init=non components

hehgoalHamzaabove-ar=hehgoal-ar+hamzaabove-ar
hehgoalHamzaabove-ar.fina=hehgoal-ar.fina+hamzaabove-ar

tehMarbutagoal-ar=hehgoal-ar+twodotshorizontalabove-ar
tehMarbutagoal-ar.fina=hehgoal-ar.fina+twodotshorizontalabove-ar

hehDoachashmee-ar=non components
hehDoachashmee-ar.fina=non components
hehDoachashmee-ar.medi=non components
hehDoachashmee-ar.init=non components

hehVinvertedabove-ar=hehDoachashmee-ar+vinvertedabove-ar
hehVinvertedabove-ar.fina=hehDoachashmee-ar.fina+vinvertedabove-ar
hehVinvertedabove-ar.medi=hehDoachashmee-ar.medi+vinvertedabove-ar
hehVinvertedabove-ar.init=hehDoachashmee-ar.init+vinvertedabove-ar

components to marks:
fathatan-ar=fatha-ar+fatha-ar
kasratan-ar=kasra-ar+kasra-ar
shaddaAlefabove-ar=shadda-ar+alefabove-ar
shaddaDamma-ar=shadda-ar+damma-ar
shaddaDammatan-ar=shadda-ar+dammatan-ar
shaddaDamma-ar=shadda-ar+fatha-ar
shaddaFathatan-ar=shadda-ar+fathatan-ar

This method does not work:
shaddaKasra-ar=shadda-ar+kasra-ar
shaddaKasratan-ar=shadda-ar+kasra-ar

This method works well:
shaddaKasra-ar=fatha-ar+shadda-ar note:make first fatha-ar
shaddaKasratan-ar=fathatan-ar+shadda-ar note:make first fathatan-ar

yehVabove-ar=alefMaksura-ar+vabove-ar
yehVabove-ar.fina=alefMaksura-ar.fina+vabove-ar
yehVabove-ar.medi=yeh-ar.medi+vabove-ar
yehVabove-ar.init=yeh-ar.init+vabove-ar

yehVinverted-farsi=alefMaksura-ar+vinvertedabove-ar
yehVinverted-farsi.fina=alefMaksura-ar.fina+vinvertedabove-ar
yehVinverted-farsi.medi=yeh-ar.medi+vinvertedabove-ar
yehVinverted-farsi.init=yeh-ar.init+vinvertedabove-ar

like:
yeh-farsi=alefMaksura-ar
yeh-farsi.fina=alefMaksura-ar.fina
yeh-farsi.medi=yeh-ar.medi
yeh-farsi.init=yeh-ar.init

Added it. Thanks

shaddaAlefabove-ar, shaddaDamma-ar, shaddaDammatan-ar, shaddaFatha-ar, shaddaFathatan-ar, shaddaKasra-ar, shaddaKasratan-ar,

Are not defined with unicodes !
such as: shaddaKasratan-ar = FC5F