Skip to content

Commit

Permalink
Handle placeholders at build time
Browse files Browse the repository at this point in the history
  • Loading branch information
khaledhosny committed Oct 10, 2024
1 parent cf5fcf0 commit bbf9cdf
Show file tree
Hide file tree
Showing 162 changed files with 4,907 additions and 490 deletions.
38 changes: 19 additions & 19 deletions FontSample.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ ${FONT}: ${GLYPHSFILE}
--master-dir="{tmp}" \
--flatten-components \
--filter DecomposeTransformedComponentsFilter \
--filter "alifTools.filters::ClearPlaceholdersFilter()" \
--filter "alifTools.filters::FontVersionFilter(fontVersion=${VERSION})"

${TESTDIR}/%.json: ${TESTDIR}/%.yaml ${FONT}
Expand Down
Binary file modified fonts/Mada.ttf
Binary file not shown.
2 changes: 1 addition & 1 deletion requirements.in
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
ufo2ft >= 2.30.0
fontmake
alifTools[shaping,sample,filters] @ git+https://github.com/aliftype/tools.git@2822702e737f23cb8d8ae653108783f138d3a762
alifTools[shaping,sample,filters] @ git+https://github.com/aliftype/tools.git@d0e8c6099e013b72ad01f1f74d919148f4b84c08
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
#
# pip-compile
#
aliftools[filters,sample,shaping] @ git+https://github.com/aliftype/tools.git@2822702e737f23cb8d8ae653108783f138d3a762
aliftools[filters,sample,shaping] @ git+https://github.com/aliftype/tools.git@d0e8c6099e013b72ad01f1f74d919148f4b84c08
# via
# -r requirements.in
# aliftools
Expand Down
2 changes: 1 addition & 1 deletion sources/Mada.glyphspackage/fontinfo.plist
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ tag = wght;
classes = (
{
automatic = 1;
code = "hamza-ar highhamza-ar alef-ar alef-ar.fina alef-ar.fina.1 alefHamzaabove-ar alefHamzabelow-ar alefWavyhamzaabove-ar alefWavyhamzabelow-ar alefMadda-ar alefWasla-ar highhamzaAlef-ar behDotless-ar behDotless-ar.fina behDotless-ar.medi behDotless-ar.init beh-ar peh-ar beeh-ar beheh-ar teh-ar tehRing-ar tehThreedotsdown-ar theh-ar tteh-ar tteheh-ar teheh-ar behThreedotsupabove-ar behThreedotsupbelow-ar tehThreedotsupbelow-ar behTwodotsbelowDotabove-ar behVinvertedbelow-ar behVabove-ar behVbelow-ar behhamzaabove-ar jeem-ar tcheh-ar tcheheh-ar tchehDotabove-ar nyeh-ar dyeh-ar hah-ar hah-ar.2 hah-ar.fina hah-ar.fina.2 hah-ar.medi hah-ar.init hahHamzaabove-ar hahTwodotsverticalabove-ar hahTwodotshorizontalabove-ar hahThreedotsabove-ar hahThreedotsupbelow-ar khah-ar jeemTwodotsabove-ar dal-ar dal-ar.fina thal-ar ddal-ar dahal-ar ddahal-ar dalRing-ar dalDotbelow-ar dalDotbelowTah-ar dul-ar dalThreedotsdown-ar dalFourdots-ar dalVinvertedabove-ar dalTwodotsverticalbelowTah-ar dalVinvertedbelow-ar reh-ar reh-ar.fina zain-ar zainVinvertedabove-ar rreh-ar rehv-ar rehRing-ar rehDotbelow-ar rehVbelow-ar rehDotbelowdotabove-ar rehTwodots-ar jeh-ar rehFourdots-ar rehVinvertedabove-ar rehStroke-ar rehTwodotsverticalabove-ar rehHamzaabove-ar seen-ar seen-ar.fina seen-ar.medi seen-ar.init seenDotbelowDotabove-ar seenThreedotsbelow-ar sheen-ar sheenDotbelow-ar sheenThreedotsbelow-ar sad-ar sad-ar.fina sad-ar.medi sad-ar.init sadTwodotsbelow-ar sadThreedots-ar dad-ar dadDotbelow-ar tah-ar tah-ar.fina tah-ar.medi tah-ar.init tahThreedots-ar zah-ar ain-ar ain-ar.fina ain-ar.medi ain-ar.init ainThreedots-ar ghain-ar ghainDotbelow-ar feh-ar veh-ar fehDotless-ar fehDotless-ar.fina fehDotless-ar.medi fehDotless-ar.init fehDotmovedbelow-ar fehDotbelow-ar fehThreedotsbelow-ar peheh-ar qafDotless-ar qafDotless-ar.fina qaf-ar qafDotabove-ar qafThreedotsabove-ar kafDotless-ar kafDotless-ar.fina kaf-ar kaf-ar.medi kaf-ar.init keheh-ar keheh-ar.fina kehehTwodotshorizontalabove-ar kehehThreedotsbelow-ar kehehDotabove-ar kehehThreedotsabove-ar kehehThreedotsupbelow-ar gaf-ar gafRing-ar gafThreedots-ar kafswash-ar kafswash-ar.fina kafswash-ar.medi kafswash-ar.init kafRing-ar kafDotabove-ar kafThreedotsbelow-ar gafTwodotsbelow-ar ng-ar ngoeh-ar gueh-ar lam-ar lam-ar.fina lam-ar.medi lam-ar.medi.1 lam-ar.init lam-ar.init.1 lamVabove-ar lamDotabove-ar lamThreedotsabove-ar lamThreedotsbelow-ar meem-ar meem-ar.ss04 meem-ar.fina meem-ar.fina.ss04 meem-ar.medi meem-ar.init noon-ar noonDotbelow-ar noonghunna-ar noonghunna-ar.fina rnoon-ar noonRing-ar noonThreedotsabove-ar heh-ar heh-ar.fina heh-ar.medi heh-ar.init hehHamzaabove-ar hehgoal-ar hehgoal-ar.fina hehgoal-ar.medi hehgoal-ar.init hehgoalHamzaabove-ar hehDoachashmee-ar hehDoachashmee-ar.fina hehVinvertedabove-ar tehMarbuta-ar tehMarbutagoal-ar waw-ar waw-ar.fina wawring-ar wawTwodots-ar wawDotabove-ar wawHamzaabove-ar kirghizoe-ar oe-ar u-ar yu-ar kirghizyu-ar ve-ar alefMaksura-ar alefMaksura-ar.fina yeh-ar yehHamzaabove-ar yehVabove-ar yehFarsiVinverted-ar yehFarsi-ar yehFarsiTwodotsabove-ar yehFarsiThreedotsabove-ar yehTail-ar yehKashmiri-ar e-ar yehThreedotsbelow-ar yehbarree-ar yehbarree-ar.fina yehbarreeHamzaabove-ar highhamzaWaw-ar uHamzaabove-ar highhamzaYeh-ar ae-ar wawSmall-ar yehSmall-ar seenFourdotsabove-ar noonTwodotsbelow-ar noonTahabove-ar noonVabove-ar lamBar-ar seenTwodotsverticalabove-ar seenTahTwodotshorizontalabove-ar hahTahabove-ar seenVinvertedabove-ar kashida-ar";
code = "hamza-ar highhamza-ar alef-ar alef-ar.fina alef-ar.fina.1 behDotless-ar behDotless-ar.fina behDotless-ar.medi behDotless-ar.init hah-ar hah-ar.2 hah-ar.fina hah-ar.fina.2 hah-ar.medi hah-ar.init dal-ar dal-ar.fina reh-ar reh-ar.fina seen-ar seen-ar.fina seen-ar.medi seen-ar.init sad-ar sad-ar.fina sad-ar.medi sad-ar.init tah-ar tah-ar.fina tah-ar.medi tah-ar.init ain-ar ain-ar.fina ain-ar.medi ain-ar.init fehDotless-ar fehDotless-ar.fina fehDotless-ar.medi fehDotless-ar.init qafDotless-ar qafDotless-ar.fina kafDotless-ar kafDotless-ar.fina kaf-ar.medi kaf-ar.init keheh-ar keheh-ar.fina kafswash-ar kafswash-ar.fina kafswash-ar.medi kafswash-ar.init lam-ar lam-ar.fina lam-ar.medi lam-ar.medi.1 lam-ar.init lam-ar.init.1 meem-ar meem-ar.ss04 meem-ar.fina meem-ar.fina.ss04 meem-ar.medi meem-ar.init noonghunna-ar noonghunna-ar.fina heh-ar heh-ar.fina heh-ar.medi heh-ar.init hehgoal-ar hehgoal-ar.fina hehgoal-ar.medi hehgoal-ar.init hehDoachashmee-ar hehDoachashmee-ar.fina waw-ar waw-ar.fina alefMaksura-ar alefMaksura-ar.fina yehbarree-ar yehbarree-ar.fina ae-ar kashida-ar wawSmall-ar yehSmall-ar";
name = ArabicLetters;
}
);
Expand Down
33 changes: 30 additions & 3 deletions sources/Mada.glyphspackage/glyphs/ainT_hreedots-ar.glyph
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,42 @@ glyphname = "ainThreedots-ar";
layers = (
{
layerId = master01;
width = 500;
shapes = (
{
ref = "ain-ar";
},
{
pos = (242,517);
ref = "threedotsupabove-ar";
}
);
width = 461;
},
{
layerId = "0CAB57D4-4FC4-49C3-B456-FB7666EAA712";
width = 500;
shapes = (
{
ref = "ain-ar";
},
{
pos = (213,484);
ref = "threedotsupabove-ar";
}
);
width = 426;
},
{
layerId = "42B3044F-4D5A-45CA-9EB7-C1889731596B";
width = 500;
shapes = (
{
ref = "ain-ar";
},
{
pos = (273,596);
ref = "threedotsupabove-ar";
}
);
width = 536;
}
);
unicode = 1696;
Expand Down
33 changes: 30 additions & 3 deletions sources/Mada.glyphspackage/glyphs/alefH_amzaabove-ar.glyph
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,42 @@ glyphname = "alefHamzaabove-ar";
layers = (
{
layerId = master01;
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (3,664);
ref = "hamzaabove-ar";
}
);
width = 200;
},
{
layerId = "0CAB57D4-4FC4-49C3-B456-FB7666EAA712";
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (0,664);
ref = "hamzaabove-ar";
}
);
width = 192;
},
{
layerId = "42B3044F-4D5A-45CA-9EB7-C1889731596B";
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (40,684);
ref = "hamzaabove-ar";
}
);
width = 292;
}
);
unicode = 1571;
Expand Down
33 changes: 30 additions & 3 deletions sources/Mada.glyphspackage/glyphs/alefH_amzabelow-ar.glyph
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,42 @@ glyphname = "alefHamzabelow-ar";
layers = (
{
layerId = master01;
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (3,-29);
ref = "hamzabelow-ar";
}
);
width = 200;
},
{
layerId = "0CAB57D4-4FC4-49C3-B456-FB7666EAA712";
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (0,-29);
ref = "hamzabelow-ar";
}
);
width = 192;
},
{
layerId = "42B3044F-4D5A-45CA-9EB7-C1889731596B";
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (40,-49);
ref = "hamzabelow-ar";
}
);
width = 292;
}
);
unicode = 1573;
Expand Down
33 changes: 30 additions & 3 deletions sources/Mada.glyphspackage/glyphs/alefM_adda-ar.glyph
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,42 @@ glyphname = "alefMadda-ar";
layers = (
{
layerId = master01;
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (-68,664);
ref = "madda-ar";
}
);
width = 200;
},
{
layerId = "0CAB57D4-4FC4-49C3-B456-FB7666EAA712";
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (-59,664);
ref = "madda-ar";
}
);
width = 192;
},
{
layerId = "42B3044F-4D5A-45CA-9EB7-C1889731596B";
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (-53,684);
ref = "madda-ar";
}
);
width = 292;
}
);
unicode = 1570;
Expand Down
33 changes: 30 additions & 3 deletions sources/Mada.glyphspackage/glyphs/alefW_asla-ar.glyph
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,42 @@ glyphname = "alefWasla-ar";
layers = (
{
layerId = master01;
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (-43,664);
ref = "wasla-ar";
}
);
width = 200;
},
{
layerId = "0CAB57D4-4FC4-49C3-B456-FB7666EAA712";
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (-35,664);
ref = "wasla-ar";
}
);
width = 192;
},
{
layerId = "42B3044F-4D5A-45CA-9EB7-C1889731596B";
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (-36,684);
ref = "wasla-ar";
}
);
width = 292;
}
);
unicode = 1649;
Expand Down
33 changes: 30 additions & 3 deletions sources/Mada.glyphspackage/glyphs/alefW_avyhamzaabove-ar.glyph
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,42 @@ glyphname = "alefWavyhamzaabove-ar";
layers = (
{
layerId = master01;
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (99,664);
ref = "wavyhamzaabove-ar";
}
);
width = 200;
},
{
layerId = "0CAB57D4-4FC4-49C3-B456-FB7666EAA712";
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (96,664);
ref = "wavyhamzaabove-ar";
}
);
width = 192;
},
{
layerId = "42B3044F-4D5A-45CA-9EB7-C1889731596B";
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (136,684);
ref = "wavyhamzaabove-ar";
}
);
width = 292;
}
);
unicode = 1650;
Expand Down
33 changes: 30 additions & 3 deletions sources/Mada.glyphspackage/glyphs/alefW_avyhamzabelow-ar.glyph
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,42 @@ glyphname = "alefWavyhamzabelow-ar";
layers = (
{
layerId = master01;
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (99,-29);
ref = "wavyhamzabelow-ar";
}
);
width = 200;
},
{
layerId = "0CAB57D4-4FC4-49C3-B456-FB7666EAA712";
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (96,-29);
ref = "wavyhamzabelow-ar";
}
);
width = 192;
},
{
layerId = "42B3044F-4D5A-45CA-9EB7-C1889731596B";
width = 500;
shapes = (
{
ref = "alef-ar";
},
{
pos = (136,-49);
ref = "wavyhamzabelow-ar";
}
);
width = 292;
}
);
unicode = 1651;
Expand Down
33 changes: 30 additions & 3 deletions sources/Mada.glyphspackage/glyphs/beeh-ar.glyph
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,42 @@ glyphname = "beeh-ar";
layers = (
{
layerId = master01;
width = 500;
shapes = (
{
ref = "behDotless-ar";
},
{
pos = (386,-149);
ref = "twodotsverticalbelow-ar";
}
);
width = 733;
},
{
layerId = "0CAB57D4-4FC4-49C3-B456-FB7666EAA712";
width = 500;
shapes = (
{
ref = "behDotless-ar";
},
{
pos = (357,-150);
ref = "twodotsverticalbelow-ar";
}
);
width = 674;
},
{
layerId = "42B3044F-4D5A-45CA-9EB7-C1889731596B";
width = 500;
shapes = (
{
ref = "behDotless-ar";
},
{
pos = (447,-160);
ref = "twodotsverticalbelow-ar";
}
);
width = 854;
}
);
unicode = 1659;
Expand Down
Loading

0 comments on commit bbf9cdf

Please sign in to comment.