From ca79806b569d8c83c16dc5335c4081c4b40f4b96 Mon Sep 17 00:00:00 2001 From: Simon Cozens Date: Wed, 22 Jun 2022 12:01:14 +0100 Subject: [PATCH 1/7] Ignore marks when kerning, fixes #1 --- sources/NotoSerifAhom.glyphs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sources/NotoSerifAhom.glyphs b/sources/NotoSerifAhom.glyphs index 82b14f5..f753487 100644 --- a/sources/NotoSerifAhom.glyphs +++ b/sources/NotoSerifAhom.glyphs @@ -1,5 +1,5 @@ { -.appVersion = "3109"; +.appVersion = "3072"; DisplayStrings = ( "/virama_ahom" ); @@ -214,7 +214,7 @@ code = "# Automatic Code Start\012 pos eSign_ahom' lookup PairPositioning19 @ name = dist; }, { -code = "# Automatic Code Start\012\012 pos aaSign_ahom aaSign_ahom <80 0 80 0>;\012 pos iSign_ahom ta_ahom <-120 0 -120 0>;\012 pos iSign_ahom alt_ta_ahom <-120 0 -120 0>;\012 pos iSign_ahom ra_ahom <-231 0 -231 0>;\012 pos iSign_ahom ga_ahom <-100 0 -100 0>;\012 pos iSign_ahom alt_ga_ahom <-100 0 -100 0>;\012 pos iSign_ahom t_ja_ahom <-120 0 -120 0>;\012 pos iiSign_ahom ta_ahom <-120 0 -120 0>;\012 pos iiSign_ahom alt_ta_ahom <-120 0 -120 0>;\012 pos iiSign_ahom ra_ahom <-231 0 -231 0>;\012 pos iiSign_ahom ga_ahom <-100 0 -100 0>;\012 pos iiSign_ahom alt_ga_ahom <-100 0 -100 0>;\012 pos iiSign_ahom t_ja_ahom <-120 0 -120 0>;\012 pos awSign_ahom ta_ahom <-120 0 -120 0>;\012 pos awSign_ahom alt_ta_ahom <-120 0 -120 0>;\012 pos awSign_ahom ra_ahom <-231 0 -231 0>;\012 pos awSign_ahom ga_ahom <-100 0 -100 0>;\012 pos awSign_ahom alt_ga_ahom <-100 0 -100 0>;\012 pos awSign_ahom t_ja_ahom <-120 0 -120 0>;\012 pos aiSign_ahom ta_ahom <-120 0 -120 0>;\012 pos aiSign_ahom alt_ta_ahom <-120 0 -120 0>;\012 pos aiSign_ahom ra_ahom <-231 0 -231 0>;\012 pos aiSign_ahom ga_ahom <-100 0 -100 0>;\012 pos aiSign_ahom alt_ga_ahom <-100 0 -100 0>;\012 pos aiSign_ahom t_ja_ahom <-120 0 -120 0>;\012\012# ufo2ft isn't doing mark/base kerning for me so I'm just gonna do it myself\012pos na_ahom 70 aaSign_ahom;\012"; +code = "# Automatic Code Start\012 lookupflag IgnoreMarks;\012\012 pos aaSign_ahom aaSign_ahom <80 0 80 0>;\012 pos iSign_ahom ta_ahom <-120 0 -120 0>;\012 pos iSign_ahom alt_ta_ahom <-120 0 -120 0>;\012 pos iSign_ahom ra_ahom <-231 0 -231 0>;\012 pos iSign_ahom ga_ahom <-100 0 -100 0>;\012 pos iSign_ahom alt_ga_ahom <-100 0 -100 0>;\012 pos iSign_ahom t_ja_ahom <-120 0 -120 0>;\012 pos iiSign_ahom ta_ahom <-120 0 -120 0>;\012 pos iiSign_ahom alt_ta_ahom <-120 0 -120 0>;\012 pos iiSign_ahom ra_ahom <-231 0 -231 0>;\012 pos iiSign_ahom ga_ahom <-100 0 -100 0>;\012 pos iiSign_ahom alt_ga_ahom <-100 0 -100 0>;\012 pos iiSign_ahom t_ja_ahom <-120 0 -120 0>;\012 pos awSign_ahom ta_ahom <-120 0 -120 0>;\012 pos awSign_ahom alt_ta_ahom <-120 0 -120 0>;\012 pos awSign_ahom ra_ahom <-231 0 -231 0>;\012 pos awSign_ahom ga_ahom <-100 0 -100 0>;\012 pos awSign_ahom alt_ga_ahom <-100 0 -100 0>;\012 pos awSign_ahom t_ja_ahom <-120 0 -120 0>;\012 pos aiSign_ahom ta_ahom <-120 0 -120 0>;\012 pos aiSign_ahom alt_ta_ahom <-120 0 -120 0>;\012 pos aiSign_ahom ra_ahom <-231 0 -231 0>;\012 pos aiSign_ahom ga_ahom <-100 0 -100 0>;\012 pos aiSign_ahom alt_ga_ahom <-100 0 -100 0>;\012 pos aiSign_ahom t_ja_ahom <-120 0 -120 0>;\012\012# ufo2ft isn't doing mark/base kerning for me so I'm just gonna do it myself\012pos na_ahom 70 aaSign_ahom;\012"; name = kern; }, { From dd345ef072199fbfd0e6398d60877522b6ab4b14 Mon Sep 17 00:00:00 2001 From: Simon Cozens Date: Wed, 22 Jun 2022 12:03:56 +0100 Subject: [PATCH 2/7] Rewrite tests, add test for #1 --- qa/shaping_tests/ahom.json | 333 ++----------------------------------- 1 file changed, 10 insertions(+), 323 deletions(-) diff --git a/qa/shaping_tests/ahom.json b/qa/shaping_tests/ahom.json index eeac0bc..82711a0 100644 --- a/qa/shaping_tests/ahom.json +++ b/qa/shaping_tests/ahom.json @@ -3,350 +3,37 @@ { "expectation": "dha_ahom=0+1036|ga_ahom=1+836", "input": "𑜔𑜕", - "note": "Issue #1360", - "only": "NotoSerifAhom-Regular.ttf" + "note": "notofonts/noto-fonts#1360" }, { "expectation": "na_ahom=0+879|iSign_ahom=0@-231,0+0|uSign_ahom=0@-234,0+0", "input": "𑜃𑜢𑜤", - "note": "Issue #1372", - "only": "NotoSerifAhom-Regular.ttf" + "note": "notofonts/noto-fonts#1372" }, { "expectation": "na_ahom=0+879|iSign_ahom=0@-231,0+0", "input": "𑜃𑜢", - "note": "Issue #1372", - "only": "NotoSerifAhom-Regular.ttf" + "note": "notofonts/noto-fonts#1372" }, { "expectation": "khra_ahom=0+844|phra_ahom=2+1039", "input": "𑜁𑜟𑜇𑜟", - "note": "Issue #1359", - "only": "NotoSerifAhom-Regular.ttf" + "note": "notofonts/noto-fonts#1359" }, { "expectation": "na_ahom=0+648|virama_ahom=0@37,0+0|virama_ahom=0@367,-30+0", "input": "𑜃𑜫𑜫", - "note": "Issue #1358", - "only": "NotoSerifAhom-Regular.ttf" + "note": "notofonts/noto-fonts#1358" }, { "expectation": "four_ahom=0+1256", "input": "𑜴", - "note": "Issue #1361", - "only": "NotoSerifAhom-Regular.ttf" + "note": "notofonts/noto-fonts#1361" }, { - "expectation": "eSign_ahom=0+630|dottedCircle=0+594|pa_ahom=1@250,0+1144|medialRa_ahom.sm=1@-174,0+0|iiSign_ahom=1@-71,0+0|da_ahom=4+727|amSign_ahom=4@-102,0+0|da_ahom=6+727", - "input": "𑜦𑜆𑜞𑜣𑜓𑜪𑜓", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "da_ahom=0+727|amSign_ahom=0@-102,0+0|ta_ahom=2+882|medialLigaRa_ahom=2@-482,0+0|i_u_ahom=2+275", - "input": "𑜓𑜪𑜄𑜟𑜢𑜤", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "ba_ahom=0+703|uSign_ahom=0@-8,0+0|uSign_ahom=0@-8,0+0|ga_ahom=3@250,0+1317|medialRa_ahom.sm=3@-267,0+0|aiSign_ahom=3@-164,0+0|pha_ahom=6+1039|medialLa_ahom=6@-19,0+0", - "input": "𑜈𑜤𑜤𑜕𑜞𑜩𑜇𑜝", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "ta_ahom=0+1113|iSign_ahom=0@-231,0+0|ba_ahom=2+934|iiSign_ahom=2@-231,0+0", - "input": "𑜄𑜢𑜈𑜣", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "ga_ahom=0+836|medialLigaRa_ahom=0@-436,0+0|pa_ahom=2+894|aiSign_ahom=2@-231,0+0", - "input": "𑜕𑜟𑜆𑜩", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "nga_ahom=0+610|oSign_ahom=0@-30,0+0|alt_ba_ahom=2+850|awSign_ahom=2@-221,0+0|pa_ahom=4+894|awSign_ahom=4@-231,0+0|ta_ahom=6@-120,0+762|amSign_ahom=6@-107,0+0", - "input": "𑜂𑜨𑜚𑜧𑜆𑜧𑜄𑜪", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "sa_ahom=0@250,0+1506|medialRa_ahom=0@-236,0+0|awSign_ahom=0@-236,0+0|dha_ahom=3+1267|medialLa_ahom=3@-307,-150+0|iiSign_ahom=3@-231,0+0", - "input": "𑜏𑜞𑜧𑜔𑜝𑜣", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "gha_ahom=0@250,0+1445|medialRa_ahom.desc=0@-195,0+0|aiSign_ahom=0@-195,0+0|a_ahom=3+944|medialLigaRa_ahom=3@-424,0+0", - "input": "𑜗𑜞𑜩𑜒𑜟", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "nga_ahom=0+610|medialLa_ahom.sm=0@70,0+0|da_ahom=2+958|medialLa_ahom=2@-58,-150+0|iiSign_ahom=2@-231,0+0|dha_ahom=5+1036|uuSign_ahom=5@-21,0+0|dottedCircle=5+825|iiSign_ahom=5@-231,0+0|ra_ahom=8@-231,0+638", - "input": "𑜂𑜝𑜓𑜝𑜣𑜔𑜥𑜣𑜍", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "ra_ahom=0+1130|medialLa_ahom=0@-230,0+0|awSign_ahom=0@-230,0+0|jha_ahom=3+1184|medialLa_ahom=3@-224,-150+0|iSign_ahom=3@-231,0+0|pha_ahom=6+1270|iSign_ahom=6@-231,0+0|iSign_ahom=6@150,0+0|nya_ahom=9+1151|iiSign_ahom=9@-231,0+0", - "input": "𑜍𑜝𑜧𑜙𑜝𑜢𑜇𑜢𑜢𑜐𑜣", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "dha_ahom=0+1036|medialLa_ahom=0@-76,-150+0|i_u_ahom=0+275|da_ahom=4+958|medialLigaRa_ahom=4@-698,0+0|iSign_ahom=4@-231,0+0|bha_ahom=7+1270|medialLigaRa_ahom=7@-710,0+0|iSign_ahom=7@-231,0+0|iSign_ahom=7@150,0+0|ma_ahom=11@250,0+1144|medialRa_ahom.sm=11@-174,0+0|aiSign_ahom=11@-71,0+0", - "input": "𑜔𑜝𑜢𑜤𑜓𑜟𑜢𑜘𑜟𑜢𑜢𑜉𑜞𑜩", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "dottedCircle=0+825|iiSign_ahom=0@-231,0+0|awSign_ahom=0@60,0+0|eSign_ahom=2+630|ka_ahom=2+1175|iSign_ahom=2@-231,0+0|iSign_ahom=2@150,0+0", - "input": "𑜣𑜧𑜀𑜦𑜢𑜢", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "pa_ahom=0+663|medialLigaRa_ahom=0@-463,0+0|uSign_ahom=0@-8,0+0|uSign_ahom=0@-8,0+0|la_ahom=4+1184|awSign_ahom=4@-231,0+0|a_ahom=6+1175|awSign_ahom=6@-231,0+0", - "input": "𑜆𑜟𑜤𑜤𑜎𑜧𑜒𑜧", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "alt_ta_ahom=0+667|i_u_ahom=0+275|ka_ahom=3+944|eSign_ahom=4+630|gha_ahom=4+964|uSign_ahom=4@-19,0+0|dottedCircle=4+825|iSign_ahom=4@-231,0+0|ma_ahom=8+894|aiSign_ahom=8@-231,0+0", - "input": "𑜅𑜢𑜤𑜀𑜗𑜦𑜤𑜢𑜉𑜩", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "tha_ahom=0+1036|i_u_ahom=0+275|pa_ahom=3+663|medialLigaRa_ahom=3@-463,0+0|i_u_ahom=3+275|ha_ahom=7+955|medialLigaRa_ahom=7@-695,0+0|aiSign_ahom=7@-231,0+0|eSign_ahom=10+570|alt_ta_ahom=10+667|i_u_ahom=10+275", - "input": "𑜌𑜢𑜤𑜆𑜟𑜢𑜤𑜑𑜟𑜩𑜅𑜦𑜢𑜤", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "eSign_ahom=0+630|pha_ahom=0+1039|i_u_ahom=0+275|nya_ahom=4+1151|iiSign_ahom=4@-231,0+0|cha_ahom=6+1264|amSign_ahom=6@-349,0+0|awSign_ahom=6@-231,0+0", - "input": "𑜇𑜦𑜢𑜤𑜐𑜣𑜋𑜪𑜧", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "jha_ahom=0+953|amSign_ahom=0@-108,0+0|bha_ahom=2+1039|medialLigaRa_ahom=2@-479,0+0|tha_ahom=4+1267|iSign_ahom=4@-231,0+0|iSign_ahom=4@150,0+0", - "input": "𑜙𑜪𑜘𑜟𑜌𑜢𑜢", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "bha_ahom=0+1270|medialLa_ahom=0@-310,-150+0|aiSign_ahom=0@-231,0+0|pha_ahom=3@250,0+1289|medialRa_ahom=3@11,0+0|jha_ahom=5+953|i_u_ahom=5+275|alt_ba_ahom=8+850|iiSign_ahom=8@-221,0+0", - "input": "𑜘𑜝𑜩𑜇𑜞𑜙𑜢𑜤𑜚𑜣", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "na_ahom=0+648|ba_ahom=1+703|uSign_ahom=1@-8,0+0|uSign_ahom=1@-8,0+0|alt_ta_ahom=4@250,0+1148|medialRa_ahom.sm=4@-178,0+0|iSign_ahom=4@-75,0+0|eSign_ahom=7+630|ma_ahom=7+663|uSign_ahom=7@12,0+0|uSign_ahom=7@12,0+0", - "input": "𑜃𑜈𑜤𑜤𑜅𑜞𑜢𑜉𑜦𑜤𑜤", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "eSign_ahom=0+630|dottedCircle=0+594|ra_ahom=1+869|ta_ahom=2@250,0+1132|medialRa_ahom=2@168,0+0|eSign_ahom=4+630|jha_ahom=4+1184|iSign_ahom=4@-231,0+0|iSign_ahom=4@150,0+0|ga_ahom=8@-100,0+736|medialLa_ahom.sm=8@-16,0+0|uSign_ahom=8@-31,-269+0|dottedCircle=8+825|iSign_ahom=8@-231,0+0", - "input": "𑜦𑜍𑜄𑜞𑜙𑜦𑜢𑜢𑜕𑜝𑜤𑜢", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "dottedCircle=0@250,0+844|medialRa_ahom=0@318,0+0|dha_ahom=1+1036|amSign_ahom=1@-111,0+0|iiSign_ahom=1+0|ta_ahom=4@-120,0+762", - "input": "𑜞𑜔𑜪𑜣𑜄", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "pa_ahom=0+663|medialLigaRa_ahom=0@-463,0+0|uSign_ahom=0@-8,0+0|uSign_ahom=0@-8,0+0|jha_ahom=4+1184|iSign_ahom=4@-231,0+0|iSign_ahom=4@150,0+0|alt_ta_ahom=7@-120,0+547", - "input": "𑜆𑜟𑜤𑜤𑜙𑜢𑜢𑜅", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "kha_ahom=0@250,0+1111|medialRa_ahom=0@139,0+0|sa_ahom=2+1256|aiSign_ahom=2@-231,0+0|ba_ahom=4+934|iiSign_ahom=4@-231,0+0|alt_ga_ahom=6@-100,0+1277|medialLigaRa_ahom=6@-727,0+0|iiSign_ahom=6@-231,0+0", - "input": "𑜁𑜞𑜏𑜩𑜈𑜣𑜖𑜟𑜣", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "ta_ahom=0+1113|awSign_ahom=0@-231,0+0|alt_ta_ahom=2@130,0+797|medialRa_ahom.sm=2@53,0+0|alt_ga_ahom=4+1146|ha_ahom=5+724|medialLigaRa_ahom=5@-464,0+0|uSign_ahom=5@1,0+0|uSign_ahom=5@1,0+0", - "input": "𑜄𑜧𑜅𑜞𑜖𑜑𑜟𑜤𑜤", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "eSign_ahom=0+570|ga_ahom=0+836|gha_ahom=2+964|ma_ahom=3+663|medialLa_ahom.sm=3@57,0+0|uSign_ahom=3@42,-269+0|uSign_ahom=3@12,0+0|ta_ahom=7@250,0+1363|medialRa_ahom=7@-63,0+0|aiSign_ahom=7@-63,0+0", - "input": "𑜕𑜦𑜗𑜉𑜝𑜤𑜤𑜄𑜞𑜩", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "dha_ahom=0+1267|medialLa_ahom=0@-307,-150+0|iSign_ahom=0@-231,0+0|jha_ahom=3+1184|aiSign_ahom=3@-231,0+0|eSign_ahom=3+630|dottedCircle=3+594|ka_ahom=6+944", - "input": "𑜔𑜝𑜢𑜙𑜩𑜦𑜀", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "nya_ahom=0@250,0+1401|medialRa_ahom=0@-131,0+0|iSign_ahom=0@-131,0+0|alt_ga_ahom=3@-100,0+1046|la_ahom=4+1184|medialLa_ahom=4@-224,0+0|iiSign_ahom=4@-231,0+0|iSign_ahom=4@150,0+0|ra_ahom=8@-231,0+638", - "input": "𑜐𑜞𑜢𑜖𑜎𑜝𑜣𑜢𑜍", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "la_ahom=0@250,0+1203|medialRa_ahom=0@67,0+0|nga_ahom=2+841|aiSign_ahom=2@-231,0+0|dottedCircle=4+825|iiSign_ahom=4@-231,0+0", - "input": "𑜎𑜞𑜂𑜩◌𑜣", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "ma_ahom=0@250,0+1144|medialRa_ahom.sm=0@-174,0+0|awSign_ahom=0@-71,0+0|ra_ahom=3@-231,0+899|medialLigaRa_ahom=3@-730,120+0|aiSign_ahom=3@-230,0+0", - "input": "𑜉𑜞𑜧𑜍𑜟𑜩", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "kha_ahom=0+861|la_ahom=1+953|medialLigaRa_ahom=1@-503,0+0|uSign_ahom=1@-8,0+0|dottedCircle=1+825|iSign_ahom=1@-231,0+0|alt_ga_ahom=5@-100,0+1277|medialLigaRa_ahom=5@-727,0+0|iiSign_ahom=5@-231,0+0|ga_ahom=8@-100,0+736|uSign_ahom=8@-1,0+0", - "input": "𑜁𑜎𑜟𑜤𑜢𑜖𑜟𑜣𑜕𑜤", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "na_ahom=0+879|aiSign_ahom=0@-231,0+0|sa_ahom=2+1256|iSign_ahom=2@-231,0+0|iSign_ahom=2@150,0+0|ba_ahom=5+934|iiSign_ahom=5@-231,0+0|kha_ahom=7@250,0+1342|medialRa_ahom=7@-92,0+0|iSign_ahom=7@-92,0+0", - "input": "𑜃𑜩𑜏𑜢𑜢𑜈𑜣𑜁𑜞𑜢", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "eSign_ahom=0+630|dottedCircle=0+594|jha_ahom=1@250,0+1203|medialRa_ahom.desc=1@47,0+0|alt_ta_ahom=3+898|medialLigaRa_ahom=3@-698,0+0|iSign_ahom=3@-231,0+0|ja_ahom=6+1184|iSign_ahom=6@-231,0+0|iSign_ahom=6@150,0+0|jha_ahom=9+953|medialLa_ahom=9@7,-150+0|uSign_ahom=9@-28,-409+0|uSign_ahom=9@-8,0+0", - "input": "𑜦𑜙𑜞𑜅𑜟𑜢𑜊𑜢𑜢𑜙𑜝𑜤𑜤", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "nga_ahom=0+610|uuSign_ahom=0@-35,0+0|khra_ahom=2+1075|aiSign_ahom=2@-221,0+0", - "input": "𑜂𑜥𑜁𑜟𑜩", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "alt_ba_ahom=0+619|uSign_ahom=0@2,0+0|gha_ahom=2+1195|aiSign_ahom=2@-231,0+0|ra_ahom=4@-231,0+638|medialLa_ahom=4@31,0+0", - "input": "𑜚𑜤𑜗𑜩𑜍𑜝", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "dottedCircle=0+594|o_u_ahom=0@120,0+0|dottedCircle=0@250,0+1075|medialRa_ahom=0@87,0+0|iiSign_ahom=0@87,0+0|phra_ahom=4+1039|i_u_ahom=4+275|a_ahom=8@250,0+1425|medialRa_ahom=8@-155,40+0|awSign_ahom=8@-155,40+0", - "input": "𑜤𑜨𑜞𑜣𑜇𑜟𑜢𑜤𑜒𑜞𑜧", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "cha_ahom=0@250,0+1514|medialRa_ahom=0@-244,0+0|iiSign_ahom=0@-244,0+0|alt_ta_ahom=3@-120,0+547|medialLa_ahom.sm=3@13,0+0|i_u_ahom=3+275|da_ahom=7+958|iiSign_ahom=7@-231,0+0", - "input": "𑜋𑜞𑜣𑜅𑜝𑜢𑜤𑜓𑜣", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "da_ahom=0+727|cha_ahom=1@250,0+1514|medialRa_ahom=1@-244,0+0|awSign_ahom=1@-244,0+0|phra_ahom=4+1270|iSign_ahom=4@-221,0+0|iSign_ahom=4@160,0+0", - "input": "𑜓𑜋𑜞𑜧𑜇𑜟𑜢𑜢", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "ka_ahom=0+1175|aiSign_ahom=0@-231,0+0|ga_ahom=2@150,0+1217|medialRa_ahom.sm=2@-267,0+0|awSign_ahom=2@-164,0+0|ma_ahom=5+894|medialLa_ahom.sm=5@-174,0+0|iSign_ahom=5@-231,0+0", - "input": "𑜀𑜩𑜕𑜞𑜧𑜉𑜝𑜢", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "bha_ahom=0+1270|aiSign_ahom=0@-231,0+0|ta_ahom=2@-120,0+762|medialLa_ahom=2@78,0+0|uSign_ahom=2@43,-259+0|uSign_ahom=2@93,0+0", - "input": "𑜘𑜩𑜄𑜝𑜤𑜤", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "dottedCircle=0+825|iiSign_ahom=0@-231,0+0|ta_ahom=1@-120,0+762|nga_ahom=2+841|medialLa_ahom.sm=2@-161,0+0|awSign_ahom=2@-231,0+0|eSign_ahom=2+630|dottedCircle=2+594|alt_ga_ahom=6+1377|iSign_ahom=6@-231,0+0|ta_ahom=8@-120,0+762", - "input": "𑜣𑜄𑜂𑜝𑜧𑜦𑜖𑜢𑜄", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "ta_ahom=0+1113|medialLigaRa_ahom=0@-713,0+0|iiSign_ahom=0@-231,0+0|alt_ga_ahom=3@-100,0+1277|aiSign_ahom=3@-231,0+0|alt_ta_ahom=5@-120,0+547|medialLa_ahom.sm=5@13,0+0", - "input": "𑜄𑜟𑜣𑜖𑜩𑜅𑜝", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "ma_ahom=0+894|amSign_ahom=0@-344,0+0|awSign_ahom=0@-231,0+0|ga_ahom=3@-100,0+736|medialLa_ahom.sm=3@-16,0+0", - "input": "𑜉𑜪𑜧𑜕𑜝", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "eSign_ahom=0+570|bha_ahom=0@250,0+1289|medialRa_ahom.desc=0@-39,0+0|nga_ahom=3+610", - "input": "𑜘𑜞𑜦𑜂", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "eSign_ahom=0+550|alt_ba_ahom=0+619|uSign_ahom=0@2,0+0|uSign_ahom=0@2,0+0|da_ahom=4+958|medialLigaRa_ahom=4@-698,0+0|aiSign_ahom=4@-231,0+0", - "input": "𑜚𑜦𑜤𑜤𑜓𑜟𑜩", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "bha_ahom=0+1039|medialLigaRa_ahom=0@-479,0+0|ga_ahom=2+1067|medialLa_ahom.sm=2@-247,0+0|aiSign_ahom=2@-231,0+0|alt_ga_ahom=5@-100,0+1046", - "input": "𑜘𑜟𑜕𑜝𑜩𑜖", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "alt_ga_ahom=0+1377|iiSign_ahom=0@-231,0+0|eSign_ahom=2+600|na_ahom=2+648|medialLa_ahom.sm=2@32,0+0|jha_ahom=5+953|pha_ahom=6+1039", - "input": "𑜖𑜣𑜃𑜝𑜦𑜙𑜇", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "eSign_ahom=0+550|ra_ahom=0+1130|iSign_ahom=0@-230,0+0|iSign_ahom=0@151,0+0|tha_ahom=4+1267|medialLa_ahom=4@-247,0+0|iiSign_ahom=4@-231,0+0", - "input": "𑜍𑜦𑜢𑜢𑜌𑜝𑜣", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "eSign_ahom=0+570|alt_ta_ahom=0+667|uSign_ahom=0@-12,0+0|uSign_ahom=0@-12,0+0|gha_ahom=4+1195|aiSign_ahom=4@-231,0+0|eSign_ahom=6+570|alt_ga_ahom=6+1146|i_u_ahom=6+275|ha_ahom=10+724|medialLa_ahom.sm=10@-4,0+0", - "input": "𑜅𑜦𑜤𑜤𑜗𑜩𑜖𑜦𑜢𑜤𑜑𑜝", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "eSign_ahom=0+630|dottedCircle=0+594|tha_ahom=1+1036|eSign_ahom=2+570|ta_ahom=2+882|ka_ahom=4+944|alt_ga_ahom=5+1146", - "input": "𑜦𑜌𑜄𑜦𑜀𑜖", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "cha_ahom=0+1033|uSign_ahom=0@-18,0+0|dottedCircle=0+825|awSign_ahom=0@-231,0+0|iSign_ahom=0@204,0+0|o_u_ahom=0@-111,0+0", - "input": "𑜋𑜤𑜧𑜢𑜨𑜤", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "na_ahom=0+718|aaSign_ahom=0+264|bha_ahom=2+1039|ha_ahom=3+724|medialLa_ahom.sm=3@-4,0+0|ka_ahom=5+1175|aiSign_ahom=5@-231,0+0", - "input": "𑜃𑜡𑜘𑜑𑜝𑜀𑜩", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" - }, - { - "expectation": "eSign_ahom=0+630|pa_ahom=0+663|i_u_ahom=0+275|tha_ahom=4+1267|awSign_ahom=4@-231,0+0|alt_ga_ahom=6@150,0+1296|medialRa_ahom=6@-66,0+0", - "input": "𑜆𑜦𑜢𑜤𑜌𑜧𑜖𑜞", - "note": "Added by SIESTA", - "only": "NotoSerifAhom-Regular.ttf" + "expectation": "na_ahom=0+718|aaSign_ahom=0+264|space=2+220|na_ahom=3+718|medialLa_ahom.sm=3@-38,0+0|aaSign_ahom=3+264", + "input": "𑜃𑜡 𑜃𑜝𑜡", + "note": "#1" } ] -} \ No newline at end of file +} From 3b3065fb0b590ade601d5cc296d6084f3df72e6d Mon Sep 17 00:00:00 2001 From: Simon Cozens Date: Wed, 22 Jun 2022 12:26:32 +0100 Subject: [PATCH 3/7] Fix t_ja anchors and shaping, fixes #3 --- sources/NotoSerifAhom.glyphs | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/sources/NotoSerifAhom.glyphs b/sources/NotoSerifAhom.glyphs index f753487..e5f4095 100644 --- a/sources/NotoSerifAhom.glyphs +++ b/sources/NotoSerifAhom.glyphs @@ -1,7 +1,7 @@ { .appVersion = "3072"; DisplayStrings = ( -"/virama_ahom" +"/t_ja_ahom" ); classes = ( { @@ -180,7 +180,7 @@ code = "lookup SinglePositioning1 {\012 lookupflag 0;\012 ;\012 pos dot name = SinglePositioning1; }, { -code = "lookup SinglePositioning2 {\012 lookupflag 0;\012 ;\012 # Original source: 1 \012 pos [a_ahom alt_ba_ahom alt_ga_ahom alt_ta_ahom ba_ahom bha_ahom cha_ahom da_ahom dha_ahom dottedCircle ga_ahom ga_ahom.alt gha_ahom ha_ahom ja_ahom jha_ahom jha_ahom.alt ka_ahom kha_ahom khra_ahom la_ahom ma_ahom na_ahom nga_ahom nya_ahom pa_ahom pha_ahom phra_ahom ra_ahom sa_ahom t_ja_ahom ta_ahom tha_ahom] <250 0 250 0>;\012} SinglePositioning2;\012"; +code = "lookup SinglePositioning2 {\012 lookupflag 0;\012 ;\012 # Original source: 1 \012 pos [a_ahom alt_ba_ahom alt_ga_ahom alt_ta_ahom ba_ahom bha_ahom cha_ahom da_ahom dha_ahom dottedCircle ga_ahom ga_ahom.alt gha_ahom ha_ahom ja_ahom jha_ahom jha_ahom.alt ka_ahom kha_ahom khra_ahom la_ahom ma_ahom na_ahom nga_ahom nya_ahom pa_ahom pha_ahom phra_ahom ra_ahom sa_ahom ta_ahom tha_ahom] <250 0 250 0>;\012 pos t_ja_ahom <0 0 -150 0>;\012} SinglePositioning2;\012"; name = SinglePositioning2; }, { @@ -202,7 +202,7 @@ code = "\012# o/u ligatures\012sub uSign_ahom oSign_ahom by o_u_ahom;\012sub oSi name = ccmp; }, { -code = "sub kha_ahom medialLigaRa_ahom by khra_ahom;\012sub alt_ta_ahom ja_ahom by t_ja_ahom;\012sub pha_ahom medialLigaRa_ahom by phra_ahom;\012"; +code = "sub kha_ahom medialLigaRa_ahom by khra_ahom;\012sub pha_ahom medialLigaRa_ahom by phra_ahom;\012\012lookup tja {\012lookupflag IgnoreMarks;\012sub alt_ta_ahom ja_ahom by t_ja_ahom;\012} tja;\012"; name = rlig; }, { @@ -224,6 +224,10 @@ name = mark; { code = "# Automatic Code Start\012"; name = blwm; +}, +{ +code = "# Automatic Code Start"; +name = abvm; } ); fontMaster = ( @@ -6700,13 +6704,13 @@ category = Letter; }, { glyphname = t_ja_ahom; -lastChange = "2019-08-07 17:52:21 +0000"; +lastChange = "2022-06-22 11:25:40 +0000"; layers = ( { anchors = ( { name = Anchor10; -position = "{0, 0}"; +position = "{1100, 0}"; }, { name = Anchor11; @@ -6714,7 +6718,7 @@ position = "{1060, 0}"; }, { name = Anchor12; -position = "{0, 0}"; +position = "{975, 0}"; }, { name = Anchor13; @@ -6738,7 +6742,7 @@ position = "{1080, 0}"; }, { name = Anchor9; -position = "{0, 0}"; +position = "{712, 0}"; } ); layerId = UUID0; @@ -6832,6 +6836,7 @@ width = 1142; } ); category = Letter; +subCategory = Other; }, { glyphname = i_u_ahom; From 2fba6ae2121658477f082d9dde8d1120fbe55d96 Mon Sep 17 00:00:00 2001 From: Simon Cozens Date: Wed, 22 Jun 2022 12:31:08 +0100 Subject: [PATCH 4/7] Tests for #3 --- qa/shaping_tests/ahom.json | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/qa/shaping_tests/ahom.json b/qa/shaping_tests/ahom.json index 82711a0..842a327 100644 --- a/qa/shaping_tests/ahom.json +++ b/qa/shaping_tests/ahom.json @@ -34,6 +34,11 @@ "expectation": "na_ahom=0+718|aaSign_ahom=0+264|space=2+220|na_ahom=3+718|medialLa_ahom.sm=3@-38,0+0|aaSign_ahom=3+264", "input": "𑜃𑜡 𑜃𑜝𑜡", "note": "#1" + }, + { + "input": "𑜅𑜞𑜊 𑜅𑜦𑜊 𑜅𑜝𑜊 𑜀𑜝", + "expectation": "t_ja_ahom=0+992|medialRa_ahom.sm=0@-280,0+0|space=3+220|eSign_ahom=4+570|t_ja_ahom=4+1142|space=7+220|t_ja_ahom=8+1142|medialLa_ahom.sm=8@-167,0+0|space=11+220|ka_ahom=12+944|medialLa_ahom=12@16,0+0", + "note": "#3" } ] } From d8eae27824d18db934b943072f5b27f38fb198c0 Mon Sep 17 00:00:00 2001 From: Simon Cozens Date: Wed, 22 Jun 2022 12:35:20 +0100 Subject: [PATCH 5/7] Update version and copyright --- sources/NotoSerifAhom.glyphs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sources/NotoSerifAhom.glyphs b/sources/NotoSerifAhom.glyphs index e5f4095..ba444f1 100644 --- a/sources/NotoSerifAhom.glyphs +++ b/sources/NotoSerifAhom.glyphs @@ -29,7 +29,7 @@ code = "a_ahom alt_ba_ahom alt_ga_ahom alt_ta_ahom ba_ahom bha_ahom cha_ahom da_ name = class18; } ); -copyright = "Copyright 2018-2021 Google Inc. All Rights Reserved."; +copyright = "Copyright 2018-2022 Google Inc. All Rights Reserved."; customParameters = ( { name = glyphOrder; @@ -162,7 +162,7 @@ value = "Noto is a trademark of Google Inc."; }, { name = versionString; -value = "Version 2.003"; +value = "Version 2.005"; } ); date = "2015-01-16 16:27:17 +0000"; @@ -7300,5 +7300,5 @@ manufacturer = "Monotype Imaging Inc."; manufacturerURL = "http://www.google.com/get/noto/"; unitsPerEm = 1000; versionMajor = 2; -versionMinor = 4; +versionMinor = 5; } From d95ac4ce179be2e092f5abc89dc2ec034c74e2ec Mon Sep 17 00:00:00 2001 From: Simon Cozens Date: Wed, 22 Jun 2022 12:38:38 +0100 Subject: [PATCH 6/7] GF standard things --- sources/NotoSerifAhom.glyphs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sources/NotoSerifAhom.glyphs b/sources/NotoSerifAhom.glyphs index ba444f1..81a3282 100644 --- a/sources/NotoSerifAhom.glyphs +++ b/sources/NotoSerifAhom.glyphs @@ -141,16 +141,20 @@ name = "Don't use Production Names"; value = 1; }, { +name = "Use Typo Metrics"; +value = 1; +}, +{ name = description; value = "Designed by Monotype design team."; }, { name = license; -value = "This Font Software is licensed under the SIL Open Font License, Version 1.1. This Font Software is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the SIL Open Font License for the specific language, permissions and limitations governing your use of this Font Software."; +value = "This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is available with a FAQ at: https://scripts.sil.org/OFL"; }, { name = licenseURL; -value = "http://scripts.sil.org/OFL"; +value = "https://scripts.sil.org/OFL"; }, { name = vendorID; From dbfd9b69caea42288a82afa595adb1bee05fcb85 Mon Sep 17 00:00:00 2001 From: Simon Cozens Date: Wed, 22 Jun 2022 13:13:14 +0100 Subject: [PATCH 7/7] GF standard copyright --- sources/NotoSerifAhom.glyphs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/NotoSerifAhom.glyphs b/sources/NotoSerifAhom.glyphs index 81a3282..9988e94 100644 --- a/sources/NotoSerifAhom.glyphs +++ b/sources/NotoSerifAhom.glyphs @@ -29,7 +29,7 @@ code = "a_ahom alt_ba_ahom alt_ga_ahom alt_ta_ahom ba_ahom bha_ahom cha_ahom da_ name = class18; } ); -copyright = "Copyright 2018-2022 Google Inc. All Rights Reserved."; +copyright = "Copyright 2022 The Noto Project Authors (https://github.com/notofonts/ahom)"; customParameters = ( { name = glyphOrder;