I designed Fonts Arabic and Latin
In my design for Latin Fonts I find ease in programming
But in programming the Arabic Fonts I’m having difficulties such as
When I do the following
F_T
The result is
F+T=F_T
But when I do it on the Arab side
reh_noon-ar
The result is nothing!! Why not develop this feature for Arabic?!
Illogical solution … Presumably when you collect a number of Glyphs that are directly add table “cat” and add the code to the glyphs as case with the Latin glyphs
For example when added this glyph for the glyphs Panel
reh_noon-ar
Is basically a Two glyphs
“Reh-ar and noon-ar”
So it will compile code in the “cat”
“sub reh-ar noon-ar by reh_noon-ar”
This applies to the rest of the Arabic glyphs
Also another problem: in case of three glyphs in one glyph, as is the case with this glyph
lam_meem_jeem-ar.init
How I will use the marks here?!
By default when you use the marks for any glyph in table (dlig) the glyph returns to the normal case.
So I deleted this code (lookupflag IgnoreMarks RightToLeft;) Of programming but not works correctly if the marks on the last glyph
For ligatures, you need to specify its position. reh_noon-ar will be considered as isolated and constructed as the ligature of initial reh and final noon. Likewise, reh_noon-ar.init will ligate initial reh with medial noon, etc.
The anchors in ligatures need to be called top_1, top_2, top_3, etc. The number refers to the number of the character in the ligature. In your example, top in lam will become top_1 in the ligature glyph; top_2 will be the top for meem, etc. Then, the application can build the feature that repositions the marks.
If you delete the IgnoreMarks rule, the ligature will not work as soon as there are marks.
Speaking of font properties … You cannot put the marks on it where the property (dlig) so where are the marks? Do you stack up?! Must return the glyph to its natural form to be able to put the marks above or below it, how would it?
In case : the glyph includes two glyphs Or two letters
Are the glyphs App has the ability to know The first glyph and the second glyph Through the name of the two glyphs,
Then find the programming code to them, as the case with the Latin font?
This will shorten a lot of time … It will also be a good point in favor of the glyph App .
See the number of glyphs here and the number of codes that I added manually … every time I will do it ?
You cannot preview mark2liga (this is what it is called) inside Glyphs. You will have to preview in InDesign, it works there. And you do not need to type it differently for a ligature to work. Because characters and glyphs are different things:
I am not sure I understand the ligatures you propose (why do you ligate a final followed by an initial?), but if you want them in the app, you can put them all in a list filter, and generate them for every font. Select your ligatures and click on the gear menu in the lower left corner, and choose Add List Filter.
Ah, I think now I understand. And I believe what sylvain meant was that you do not need to build those ligatures if all that changes is just the reh. Yes, reh_noon would be a ligature, but I think he meant to suggest ‘rehSmall (or reh.small) as a contextual alternate’.
Telling from what I see in your last screenshot, I would also rather go the contextual alternate way.
In you rlig, dlig or liga feature, you create two lookups, one for (1) decompose, one for (2) mark2liga. The only difference should be the lookupflag line. If you put your sub … by …; line into (1) it will decompose as soon as you put a mark in between. If you move it into (2), it will make the ligature regardless of the marks:
lookup decompose {
lookupflag RightToLeft;
sub …
} decompose;
lookup mark2liga {
lookupflag IgnoreMarks, RightToLeft;
sub …
} mark2liga;