From c34d5bc0f952f4e7957e983df97216b9e44cf5c0 Mon Sep 17 00:00:00 2001 From: Schoen Cho Date: Sat, 13 Jan 2024 21:55:28 +0000 Subject: [PATCH] ss09 swiss style and curly l (for own use) (#2) * ss09 buggy changes (duplicated ss entries on ss09) * creating all smallcaps instances (#1) * smallcap addition * version bump * debug sub table * version update * ss09 swiss style and curly l (for own use) --- src/Inter-Italic.glyphspackage/fontinfo.plist | 14 +- src/Inter-Roman.glyphspackage/fontinfo.plist | 15 +- src/features/ss09-swiss.fea | 281 ++++++++++++++++++ src/features/ss09-uprightadd.fea | 6 + version.txt | 2 +- 5 files changed, 315 insertions(+), 3 deletions(-) create mode 100644 src/features/ss09-swiss.fea create mode 100644 src/features/ss09-uprightadd.fea diff --git a/src/Inter-Italic.glyphspackage/fontinfo.plist b/src/Inter-Italic.glyphspackage/fontinfo.plist index b99234266..50514f5b9 100644 --- a/src/Inter-Italic.glyphspackage/fontinfo.plist +++ b/src/Inter-Italic.glyphspackage/fontinfo.plist @@ -2599,6 +2599,7 @@ feature ss07; feature ss08; feature c2sc; feature smcp; +feature ss09; "; tag = aalt; }, @@ -3571,6 +3572,17 @@ sub u by u.1; sub y by y.sc; "; tag = smcp; +}, +{ +code = "# FB variant cv01,cv05,cv10,ss07,ss08 +include(features/ss09-swiss.fea);"; +labels = ( +{ +language = dflt; +value = "Swiss style"; +} +); +tag = ss09; } ); fontMaster = ( @@ -16515,5 +16527,5 @@ com.typemytype.robofont.shouldAddPointsInSplineConversion = 1; UFOFormat = 3; }; versionMajor = 4; -versionMinor = 2; +versionMinor = 3; } diff --git a/src/Inter-Roman.glyphspackage/fontinfo.plist b/src/Inter-Roman.glyphspackage/fontinfo.plist index a7a2df210..387b6dab8 100644 --- a/src/Inter-Roman.glyphspackage/fontinfo.plist +++ b/src/Inter-Roman.glyphspackage/fontinfo.plist @@ -2599,6 +2599,7 @@ feature ss07; feature ss08; feature c2sc; feature smcp; +feature ss09; "; tag = aalt; }, @@ -3588,6 +3589,18 @@ sub u by u.1; sub y by y.sc; "; tag = smcp; +}, +{ +code = "# FB variant cv01,cv05,cv10,ss07,ss08 +include(features/ss09-swiss.fea); +include(features/ss09-uprightadd.fea);"; +labels = ( +{ +language = dflt; +value = "Swiss style"; +} +); +tag = ss09; } ); fontMaster = ( @@ -16414,5 +16427,5 @@ com.typemytype.robofont.shouldAddPointsInSplineConversion = 1; UFOFormat = 3; }; versionMajor = 4; -versionMinor = 2; +versionMinor = 3; } diff --git a/src/features/ss09-swiss.fea b/src/features/ss09-swiss.fea new file mode 100644 index 000000000..94da8fece --- /dev/null +++ b/src/features/ss09-swiss.fea @@ -0,0 +1,281 @@ +# cv01 flat 1 +sub one by one.ss01; +sub one.tf by one.tf.ss01; +sub one.squared by one.ss01.squared; +sub one.circled by one.ss01.circled; +sub one.numr by one.numr.ss01; +sub one.dnom by one.dnom.ss01; +sub one.sups by one.sups.ss01; +sub one.subs by one.subs.ss01; +# +# cv05 curved l +sub l by l.ss02; +sub lslash by lslash.ss02; +sub lbar by lbar.ss02; +sub lmidtilde by lmidtilde.ss02; +sub lbelt by lbelt.ss02; +sub ldot by ldot.ss02.ss07; #! +sub lacute by lacute.ss02; +sub lcommaaccent by lcommaaccent.ss02.ss07; +sub lcaron by lcaron.ss02; +sub ldotbelow by ldotbelow.ss02.ss07; #! +sub ldotbelow.ss07 by ldotbelow.ss02.ss07; +sub ldotbelowmacron by ldotbelowmacron.ss02.ss07; #! +sub ldotbelowmacron.ss07 by ldotbelowmacron.ss02.ss07; +sub llinebelow by llinebelow.ss02; +sub lcircumflexbelow by lcircumflexbelow.ss02; +# +# cv10 cornered G (missing g.sc) +sub G by G.1; +sub Gbar by Gbar.1; +sub Ghook by Ghook.1; +sub Gcircumflex by Gcircumflex.1; +sub Gbreve by Gbreve.1; +sub Gdotaccent by Gdotaccent.1.ss07; #! +sub Gdotaccent.ss07 by Gdotaccent.1.ss07; +sub Gcommaaccent by Gcommaaccent.1.ss07; +sub Gcaron by Gcaron.1; +sub Gacute by Gacute.1; +sub Gmacron by Gmacron.1; +# +# ss07 +sub Abrevedotbelow by Abrevedotbelow.ss07; +sub Acircumflexdotbelow by Acircumflexdotbelow.ss07; +sub Adieresis by Adieresis.ss07; +sub Adieresismacron by Adieresismacron.ss07; +sub Adotbelow by Adotbelow.ss07; +sub Bdotaccent by Bdotaccent.ss07; +sub Bdotbelow by Bdotbelow.ss07; +sub Cdotaccent by Cdotaccent.ss07; +sub Ddotaccent by Ddotaccent.ss07; +sub Ddotbelow by Ddotbelow.ss07; +sub Ecircumflexdotbelow by Ecircumflexdotbelow.ss07; +sub Edieresis by Edieresis.ss07; +sub Edotaccent by Edotaccent.ss07; +sub Edotbelow by Edotbelow.ss07; +sub Fdotaccent by Fdotaccent.ss07; +# sub Gdotaccent by Gdotaccent.ss07; +sub Hdieresis by Hdieresis.ss07; +sub Hdotaccent by Hdotaccent.ss07; +sub Hdotbelow by Hdotbelow.ss07; +sub Idieresis by Idieresis.ss07; +sub Idieresisacute by Idieresisacute.ss07; +sub Idotaccent by Idotaccent.ss07; +sub Idotbelow by Idotbelow.ss07; +sub Kdotbelow by Kdotbelow.ss07; +sub Ldotbelow by Ldotbelow.ss07; +sub Ldotbelowmacron by Ldotbelowmacron.ss07; +sub Mdotaccent by Mdotaccent.ss07; +sub Mdotbelow by Mdotbelow.ss07; +sub Ndotaccent by Ndotaccent.ss07; +sub Ndotbelow by Ndotbelow.ss07; +sub Ocircumflexdotbelow by Ocircumflexdotbelow.ss07; +sub Odieresis by Odieresis.ss07; +sub Odotbelow by Odotbelow.ss07; +sub Ohorndotbelow by Ohorndotbelow.ss07; +sub Otildedieresis by Otildedieresis.ss07; +sub Pdotaccent by Pdotaccent.ss07; +sub Rdotaccent by Rdotaccent.ss07; +sub Rdotbelow by Rdotbelow.ss07; +sub Rdotbelowmacron by Rdotbelowmacron.ss07; +sub Scarondotaccent by Scarondotaccent.ss07; +sub Sdotaccent by Sdotaccent.ss07; +sub Sdotbelow by Sdotbelow.ss07; +sub Sdotbelowdotaccent by Sdotbelowdotaccent.ss07; +sub Tdotaccent by Tdotaccent.ss07; +sub Tdotbelow by Tdotbelow.ss07; +sub Udieresis by Udieresis.ss07; +sub Udieresisacute by Udieresisacute.ss07; +sub Udieresisbelow by Udieresisbelow.ss07; +sub Udieresiscaron by Udieresiscaron.ss07; +sub Udieresisgrave by Udieresisgrave.ss07; +sub Udieresismacron by Udieresismacron.ss07; +sub Udotbelow by Udotbelow.ss07; +sub Uhorndotbelow by Uhorndotbelow.ss07; +sub Umacrondieresis by Umacrondieresis.ss07; +sub Vdotbelow by Vdotbelow.ss07; +sub Wdieresis by Wdieresis.ss07; +sub Wdotaccent by Wdotaccent.ss07; +sub Wdotbelow by Wdotbelow.ss07; +sub Xdieresis by Xdieresis.ss07; +sub Xdotaccent by Xdotaccent.ss07; +sub Ydieresis by Ydieresis.ss07; +sub Ydotaccent by Ydotaccent.ss07; +sub Ydotbelow by Ydotbelow.ss07; +sub Zdotaccent by Zdotaccent.ss07; +sub Zdotbelow by Zdotbelow.ss07; +sub Gdotaccent.1 by Gdotaccent.1.ss07; +sub Idieresis.1 by Idieresis.1.ss07; +sub Idieresisacute.1 by Idieresisacute.1.ss07; +sub Idotaccent.1 by Idotaccent.1.ss07; +sub Idotbelow.1 by Idotbelow.1.ss07; +sub abrevedotbelow by abrevedotbelow.ss07; +sub acircumflexdotbelow by acircumflexdotbelow.ss07; +sub adieresis by adieresis.ss07; +sub adieresismacron by adieresismacron.ss07; +sub adotaccent by adotaccent.ss07; +sub adotbelow by adotbelow.ss07; +sub bdotaccent by bdotaccent.ss07; +sub bdotbelow by bdotbelow.ss07; +sub cdotaccent by cdotaccent.ss07; +sub ddotaccent by ddotaccent.ss07; +sub ddotbelow by ddotbelow.ss07; +sub ecircumflexdotbelow by ecircumflexdotbelow.ss07; +sub edieresis by edieresis.ss07; +sub edotaccent by edotaccent.ss07; +sub edotbelow by edotbelow.ss07; +sub fdotaccent by fdotaccent.ss07; +sub gdotaccent by gdotaccent.ss07; +sub hdieresis by hdieresis.ss07; +sub hdotaccent by hdotaccent.ss07; +sub hdotbelow by hdotbelow.ss07; +sub i by i.ss07; +sub idieresis by idieresis.ss07; +sub idieresisacute by idieresisacute.ss07; +sub idotbelow by idotbelow.ss07; +sub iogonek by iogonek.ss07; +sub j by j.ss07; +sub kdotbelow by kdotbelow.ss07; +# sub ldot by ldot.ss07; +# sub ldotbelow by ldotbelow.ss07; +# sub ldotbelowmacron by ldotbelowmacron.ss07; +sub mdotaccent by mdotaccent.ss07; +sub mdotbelow by mdotbelow.ss07; +sub ndotaccent by ndotaccent.ss07; +sub ndotbelow by ndotbelow.ss07; +sub ocircumflexdotbelow by ocircumflexdotbelow.ss07; +sub odieresis by odieresis.ss07; +sub odotbelow by odotbelow.ss07; +sub ohorndotbelow by ohorndotbelow.ss07; +sub otildedieresis by otildedieresis.ss07; +sub pdotaccent by pdotaccent.ss07; +sub rdotaccent by rdotaccent.ss07; +sub rdotbelow by rdotbelow.ss07; +sub rdotbelowmacron by rdotbelowmacron.ss07; +sub sacutedotaccent by sacutedotaccent.ss07; +sub scarondotaccent by scarondotaccent.ss07; +sub sdotaccent by sdotaccent.ss07; +sub sdotbelow by sdotbelow.ss07; +sub sdotbelowdotaccent by sdotbelowdotaccent.ss07; +sub tdieresis by tdieresis.ss07; +sub tdotaccent by tdotaccent.ss07; +sub tdotbelow by tdotbelow.ss07; +sub udieresis by udieresis.ss07; +sub udieresisacute by udieresisacute.ss07; +sub udieresisbelow by udieresisbelow.ss07; +sub udieresiscaron by udieresiscaron.ss07; +sub udieresisgrave by udieresisgrave.ss07; +sub udieresismacron by udieresismacron.ss07; +sub udotbelow by udotbelow.ss07; +sub uhorndotbelow by uhorndotbelow.ss07; +sub umacrondieresis by umacrondieresis.ss07; +sub vdotbelow by vdotbelow.ss07; +sub wdieresis by wdieresis.ss07; +sub wdotaccent by wdotaccent.ss07; +sub wdotbelow by wdotbelow.ss07; +sub xdieresis by xdieresis.ss07; +sub xdotaccent by xdotaccent.ss07; +sub ydieresis by ydieresis.ss07; +sub ydotaccent by ydotaccent.ss07; +sub ydotbelow by ydotbelow.ss07; +sub zdotaccent by zdotaccent.ss07; +sub zdotbelow by zdotbelow.ss07; +sub fdotaccent.1 by fdotaccent.1.ss07; +sub ldot.ss02 by ldot.ss02.ss07; +sub ldotbelow.ss02 by ldotbelow.ss02.ss07; +sub ldotbelowmacron.ss02 by ldotbelowmacron.ss02.ss07; +sub tdieresis.1 by tdieresis.1.ss07; +sub tdotaccent.1 by tdotaccent.1.ss07; +sub tdotbelow.1 by tdotbelow.1.ss07; +sub udieresis.1 by udieresis.1.ss07; +sub udieresisacute.1 by udieresisacute.1.ss07; +sub udieresisbelow.1 by udieresisbelow.1.ss07; +sub udieresiscaron.1 by udieresiscaron.1.ss07; +sub udieresisgrave.1 by udieresisgrave.1.ss07; +sub udieresismacron.1 by udieresismacron.1.ss07; +sub udotbelow.1 by udotbelow.1.ss07; +sub uhorndotbelow.1 by uhorndotbelow.1.ss07; +sub umacrondieresis.1 by umacrondieresis.1.ss07; +sub Yi-cy by Yi-cy.ss07; +sub Yi-cy.1 by Yi-cy.1.ss07; +sub edieresis-cy by edieresis-cy.ss07; +sub iotadieresis by iotadieresis.ss07; +sub upsilondieresis by upsilondieresis.ss07; +sub upsilondieresistonos by upsilondieresistonos.ss07; +sub anoteleia by anoteleia.ss07; +sub period by period.ss07; +sub comma by comma.ss07; +sub colon by colon.ss07; +sub semicolon by semicolon.ss07; +sub ellipsis by ellipsis.ss07; +sub exclam by exclam.ss07; +sub question by question.ss07; +sub periodcentered by periodcentered.ss07; +sub reversedsemicolon by reversedsemicolon.ss07; +sub colon.case by colon.case.ss07; +sub period.tf by period.tf.ss07; +sub comma.tf by comma.tf.ss07; +sub colon.tf by colon.tf.ss07; +sub semicolon.tf by semicolon.tf.ss07; +sub colon.case.tf by colon.case.tf.ss07; +sub raisedcolonmod by raisedcolonmod.ss07; +sub dieresistonos by dieresistonos.ss07; +sub dialytikavaria by dialytikavaria.ss07; +sub dialytikaoxia by dialytikaoxia.ss07; +sub dialytikaperispomeni by dialytikaperispomeni.ss07; +sub dieresiscomb by dieresiscomb.ss07; +sub dotaccentcomb by dotaccentcomb.ss07; +sub dotaboverightcomb by dotaboverightcomb.ss07; +sub fourdotsabovecomb by fourdotsabovecomb.ss07; +sub threedotsabovecomb by threedotsabovecomb.ss07; +sub tripleunderdotcomb by tripleunderdotcomb.ss07; +sub dieresis by dieresis.ss07; +sub dotaccent by dotaccent.ss07; +sub dieresis.three by dieresis.three.ss07; +sub jcrosstail by jcrosstail.ss07; +sub slongdotaccent by slongdotaccent.ss07; +sub dotbelow by dotbelow.ss07; +sub onedotleader by onedotleader.ss07; +sub diaeresistonoscomb by diaeresistonoscomb.ss07; +sub dotdblsubcomb by dotdblsubcomb.ss07; +sub acutedotcomb.lc by acutedotcomb.lc.ss07; +sub carondot.lc by carondot.lc.ss07; +sub carondot.uc by carondot.uc.ss07; +sub dieresisacutecomb.lc by dieresisacutecomb.lc.ss07; +sub dieresisacutecomb.uc by dieresisacutecomb.uc.ss07; +sub dieresiscaroncomb.lc by dieresiscaroncomb.lc.ss07; +sub dieresiscaroncomb.uc by dieresiscaroncomb.uc.ss07; +sub dieresisgravecomb.lc by dieresisgravecomb.lc.ss07; +sub dieresisgravecomb.uc by dieresisgravecomb.uc.ss07; +sub dieresismacroncomb.lc by dieresismacroncomb.lc.ss07; +sub dieresismacroncomb.uc by dieresismacroncomb.uc.ss07; +sub macrondieresiscomb.cn by macrondieresiscomb.cn.ss07; +sub macrondieresiscomb.lc by macrondieresiscomb.lc.ss07; +sub tildedieresiscomb.lc by tildedieresiscomb.lc.ss07; +sub tildedieresiscomb.uc by tildedieresiscomb.uc.ss07; +# sub Gcommaaccent by Gcommaaccent.ss07; +sub Gcommaaccent.1 by Gcommaaccent.1.ss07; +sub Kcommaaccent by Kcommaaccent.ss07; +sub Lcommaaccent by Lcommaaccent.ss07; +sub Ncommaaccent by Ncommaaccent.ss07; +sub Rcommaaccent by Rcommaaccent.ss07; +sub Scommaaccent by Scommaaccent.ss07; +sub kcommaaccent by kcommaaccent.ss07; +# sub lcommaaccent by lcommaaccent.ss07; +sub lcommaaccent.ss02 by lcommaaccent.ss02.ss07; +sub ncommaaccent by ncommaaccent.ss07; +sub rcommaaccent by rcommaaccent.ss07; +sub scommaaccent by scommaaccent.ss07; +sub tcommaaccent by tcommaaccent.ss07; +sub tcommaaccent.1 by tcommaaccent.1.ss07; +sub commaaccent by commaaccent.ss07; +# +# ss08 +sub quotesinglbase by quotesinglbase.ss08; +sub quotedblbase by quotedblbase.ss08; +sub quotedblleft by quotedblleft.ss08; +sub quotedblright by quotedblright.ss08; +sub quoteleft by quoteleft.ss08; +sub quoteright by quoteright.ss08; +sub quotereversed by quotereversed.ss08; +sub quotedblreversed by quotedblreversed.ss08; \ No newline at end of file diff --git a/src/features/ss09-uprightadd.fea b/src/features/ss09-uprightadd.fea new file mode 100644 index 000000000..91224cf61 --- /dev/null +++ b/src/features/ss09-uprightadd.fea @@ -0,0 +1,6 @@ +sub abrevedotbelow.1 by abrevedotbelow.1.ss07; +sub acircumflexdotbelow.1 by acircumflexdotbelow.1.ss07; +sub adieresis.1 by adieresis.1.ss07; +sub adieresismacron.1 by adieresismacron.1.ss07; +sub adotaccent.1 by adotaccent.1.ss07; +sub adotbelow.1 by adotbelow.1.ss07; \ No newline at end of file diff --git a/version.txt b/version.txt index 2f97649c4..68be71f46 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -4.002 \ No newline at end of file +4.003 \ No newline at end of file