mirror of
https://github.com/i-tu/Hasklig.git
synced 2024-09-11 10:36:46 +03:00
Place basic features ahead of alternate lookups
Fixes "Stylistic Alternates" usage bug in Photoshop
This commit is contained in:
parent
b2fb112d9b
commit
bd41a18075
@ -73,59 +73,6 @@ languagesystem grek dflt; # Greek default
|
|||||||
languagesystem cyrl dflt; # Cyrillic default
|
languagesystem cyrl dflt; # Cyrillic default
|
||||||
languagesystem cyrl SRB; # Serbian
|
languagesystem cyrl SRB; # Serbian
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
lookup A_LC_ALT {
|
|
||||||
sub @A_LC by @A_LC_ALT;
|
|
||||||
} A_LC_ALT;
|
|
||||||
|
|
||||||
lookup G_LC_ALT {
|
|
||||||
sub @G_LC by @G_LC_ALT;
|
|
||||||
} G_LC_ALT;
|
|
||||||
|
|
||||||
lookup ENG_UC_SAMI { # preferred Eng shape for Sami languages
|
|
||||||
sub Eng by Eng.a;
|
|
||||||
} ENG_UC_SAMI;
|
|
||||||
|
|
||||||
#lookup BETA_LC_ALT {
|
|
||||||
# sub beta by beta.a;
|
|
||||||
#} BETA_LC_ALT;
|
|
||||||
#
|
|
||||||
#lookup THETA_LC_ALT {
|
|
||||||
# sub theta by theta.a;
|
|
||||||
#} THETA_LC_ALT;
|
|
||||||
#
|
|
||||||
#lookup PHI_LC_ALT {
|
|
||||||
# sub phi by phi.a;
|
|
||||||
#} PHI_LC_ALT;
|
|
||||||
|
|
||||||
lookup BREVE_CYR { #preferred breve shape for Cyrillic script
|
|
||||||
sub [brevecmb brevecmb.cap] by [brevecmb.cyr brevecmb.cyrcap]; # combining marks
|
|
||||||
} BREVE_CYR;
|
|
||||||
|
|
||||||
#lookup BE_LC_SRB {
|
|
||||||
# sub be by be.srb;
|
|
||||||
#} BE_LC_SRB;
|
|
||||||
|
|
||||||
lookup ZERO_SLASH {
|
|
||||||
sub [zero zero.onum zero.cap] by [zero.0 zero.0o zero.0c];
|
|
||||||
} ZERO_SLASH;
|
|
||||||
|
|
||||||
lookup HYPHEN_ALT {
|
|
||||||
sub [hyphen sfthyphen hyphentwo] by [hyphen.a sfthyphen.a hyphentwo.a];
|
|
||||||
} HYPHEN_ALT;
|
|
||||||
|
|
||||||
lookup ASTERISK_ALT {
|
|
||||||
sub asterisk by asterisk.a;
|
|
||||||
} ASTERISK_ALT;
|
|
||||||
|
|
||||||
lookup DOLLAR_ALT {
|
|
||||||
sub dollar by dollar.a;
|
|
||||||
} DOLLAR_ALT;
|
|
||||||
|
|
||||||
lookup ONE_ALT {
|
|
||||||
sub one by one.a;
|
|
||||||
} ONE_ALT;
|
|
||||||
|
|
||||||
#--------------------------------------
|
#--------------------------------------
|
||||||
#feature aalt { # Access All Alternates
|
#feature aalt { # Access All Alternates
|
||||||
# feature locl;
|
# feature locl;
|
||||||
@ -152,21 +99,28 @@ lookup ONE_ALT {
|
|||||||
feature locl { # Localized Forms
|
feature locl { # Localized Forms
|
||||||
|
|
||||||
script latn;
|
script latn;
|
||||||
|
|
||||||
language NSM exclude_dflt;
|
language NSM exclude_dflt;
|
||||||
lookup ENG_UC_SAMI;
|
lookup ENG_UC_SAMI { # preferred Eng shape for Sami languages
|
||||||
|
sub Eng by Eng.a;
|
||||||
|
} ENG_UC_SAMI;
|
||||||
|
|
||||||
language SKS exclude_dflt;
|
language SKS exclude_dflt;
|
||||||
lookup ENG_UC_SAMI;
|
lookup ENG_UC_SAMI;
|
||||||
|
|
||||||
# script grek;
|
# script grek;
|
||||||
# sub [acutecmb gravecmb commaturnedabovecmb commaabovecmb] by [tonoscmb variacmb aspercmb leniscmb]; # combining marks
|
# language dflt;
|
||||||
|
# sub [acutecmb gravecmb commaturnedabovecmb commaabovecmb] by [tonoscmb variacmb aspercmb leniscmb]; # combining marks
|
||||||
#
|
#
|
||||||
# script cyrl;
|
# script cyrl;
|
||||||
# lookup BREVE_CYR;
|
# language dflt;
|
||||||
|
# lookup BREVE_CYR { #preferred breve shape for Cyrillic script
|
||||||
|
# sub [brevecmb brevecmb.cap] by [brevecmb.cyr brevecmb.cyrcap]; # combining marks
|
||||||
|
# } BREVE_CYR;
|
||||||
#
|
#
|
||||||
# language SRB include_dflt;
|
# language SRB include_dflt;
|
||||||
# lookup BE_LC_SRB;
|
# lookup BE_LC_SRB {
|
||||||
|
# sub be by be.srb;
|
||||||
|
# } BE_LC_SRB;
|
||||||
|
|
||||||
} locl;
|
} locl;
|
||||||
|
|
||||||
@ -275,6 +229,131 @@ feature ccmp { # Glyph Composition / Decomposition
|
|||||||
|
|
||||||
} ccmp;
|
} ccmp;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature numr { # Numerators
|
||||||
|
lookup NUMR {
|
||||||
|
sub @FIGURES_LINING by @FIGURES_NUMERATOR;
|
||||||
|
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_NUMERATOR;
|
||||||
|
} NUMR;
|
||||||
|
} numr;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature dnom { # Denominators
|
||||||
|
sub @FIGURES_LINING by @FIGURES_DENOMINATOR;
|
||||||
|
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_DENOMINATOR;
|
||||||
|
} dnom;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature frac { # Fractions
|
||||||
|
@SPACE_DEFAULT = [space nbspace];
|
||||||
|
@SPACE_FRAC = [space.frac nbspace.frac];
|
||||||
|
@SLASH = [slash.frac fraction divisionslash];
|
||||||
|
|
||||||
|
lookup NUMR;
|
||||||
|
sub slash by slash.frac;
|
||||||
|
sub @FIGURES_NUMERATOR @SPACE_DEFAULT' by @SPACE_FRAC;
|
||||||
|
|
||||||
|
lookup ADJUST_WIDTHS_FRAC {
|
||||||
|
pos @SLASH <-300 0 -600 0>;
|
||||||
|
} ADJUST_WIDTHS_FRAC;
|
||||||
|
|
||||||
|
sub [fraction divisionslash slash.frac @FIGURES_DENOMINATOR @PUNCTUATION_DENOMINATOR] [@FIGURES_NUMERATOR @PUNCTUATION_NUMERATOR]' by [@FIGURES_DENOMINATOR @PUNCTUATION_DENOMINATOR];
|
||||||
|
sub @FIGURES_DENOMINATOR @SPACE_FRAC [@FIGURES_NUMERATOR @PUNCTUATION_NUMERATOR]' by [@FIGURES_DENOMINATOR @PUNCTUATION_DENOMINATOR];
|
||||||
|
} frac;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature ordn {
|
||||||
|
lookup SUPERIOR_LETTERS_MINISCULE {
|
||||||
|
sub @LETTERS_MINISCULE_LATIN_BASIC by @LETTERS_MINISCULE_LATIN_SUPERIOR;
|
||||||
|
sub [egrave eacute eogonek schwa hhook] by [egrave.sups eacute.sups eogonek.sups schwa.sups hhook.sups];
|
||||||
|
} SUPERIOR_LETTERS_MINISCULE;
|
||||||
|
} ordn;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature sups { # Superscript
|
||||||
|
lookup SUPERIOR_LETTERS_MINISCULE;
|
||||||
|
|
||||||
|
lookup SUPERIOR_NUMERALS_SORTS {
|
||||||
|
sub @FIGURES_LINING by @FIGURES_SUPERIOR;
|
||||||
|
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_SUPERIOR;
|
||||||
|
} SUPERIOR_NUMERALS_SORTS;
|
||||||
|
|
||||||
|
lookup SUPERIOR_SORTS {
|
||||||
|
sub [colon hyphen endash emdash] by [colon.sups hyphen.sups endash.sups emdash.sups];
|
||||||
|
} SUPERIOR_SORTS;
|
||||||
|
|
||||||
|
} sups;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature subs { # Subscript
|
||||||
|
lookup INFERIOR {
|
||||||
|
sub @FIGURES_LINING by @FIGURES_INFERIOR;
|
||||||
|
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_INFERIOR;
|
||||||
|
} INFERIOR;
|
||||||
|
} subs;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature sinf { # Scientific Inferiors
|
||||||
|
lookup INFERIOR;
|
||||||
|
} sinf;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature onum { # Oldstyle (Text) Figures
|
||||||
|
sub @FIGURES_LINING by @FIGURES_OLDSTYLE;
|
||||||
|
} onum;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature case { # Case-Sensitive Forms
|
||||||
|
sub @MARKS_CMB_ALL by @MARKS_CMB_ALL_CASE;
|
||||||
|
sub @FIGURES_LINING by @FIGURES_CASE;
|
||||||
|
sub @FIGURES_OLDSTYLE by @FIGURES_CASE;
|
||||||
|
sub one.a by one.ac;
|
||||||
|
sub ijacute by IJacute;
|
||||||
|
sub at by at.case;
|
||||||
|
# sub anoteleia by anoteleia.cap;
|
||||||
|
} case;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
lookup A_LC_ALT {
|
||||||
|
sub @A_LC by @A_LC_ALT;
|
||||||
|
} A_LC_ALT;
|
||||||
|
|
||||||
|
lookup G_LC_ALT {
|
||||||
|
sub @G_LC by @G_LC_ALT;
|
||||||
|
} G_LC_ALT;
|
||||||
|
|
||||||
|
#lookup BETA_LC_ALT {
|
||||||
|
# sub beta by beta.a;
|
||||||
|
#} BETA_LC_ALT;
|
||||||
|
#
|
||||||
|
#lookup THETA_LC_ALT {
|
||||||
|
# sub theta by theta.a;
|
||||||
|
#} THETA_LC_ALT;
|
||||||
|
#
|
||||||
|
#lookup PHI_LC_ALT {
|
||||||
|
# sub phi by phi.a;
|
||||||
|
#} PHI_LC_ALT;
|
||||||
|
|
||||||
|
lookup ZERO_SLASH {
|
||||||
|
sub [zero zero.onum zero.cap] by [zero.0 zero.0o zero.0c];
|
||||||
|
} ZERO_SLASH;
|
||||||
|
|
||||||
|
lookup HYPHEN_ALT {
|
||||||
|
sub [hyphen sfthyphen hyphentwo] by [hyphen.a sfthyphen.a hyphentwo.a];
|
||||||
|
} HYPHEN_ALT;
|
||||||
|
|
||||||
|
lookup ASTERISK_ALT {
|
||||||
|
sub asterisk by asterisk.a;
|
||||||
|
} ASTERISK_ALT;
|
||||||
|
|
||||||
|
lookup DOLLAR_ALT {
|
||||||
|
sub dollar by dollar.a;
|
||||||
|
} DOLLAR_ALT;
|
||||||
|
|
||||||
|
lookup ONE_ALT {
|
||||||
|
sub one by one.a;
|
||||||
|
} ONE_ALT;
|
||||||
|
|
||||||
#--------------------------------------
|
#--------------------------------------
|
||||||
feature cv01 { # Character Variant 1 (alternate lowercase a)
|
feature cv01 { # Character Variant 1 (alternate lowercase a)
|
||||||
cvParameters {
|
cvParameters {
|
||||||
@ -376,18 +455,18 @@ feature cv06 { # Character Variant 6 (Sami uppercase Eng)
|
|||||||
#} cv10;
|
#} cv10;
|
||||||
|
|
||||||
#--------------------------------------
|
#--------------------------------------
|
||||||
feature cv11 { # Character Variant 11 (Cyrillic breve)
|
#feature cv11 { # Character Variant 11 (Cyrillic breve)
|
||||||
cvParameters {
|
# cvParameters {
|
||||||
FeatUILabelNameID {
|
# FeatUILabelNameID {
|
||||||
name 3 1 0x0409 "Cyrillic breve [\02D8]"; # English US
|
# name 3 1 0x0409 "Cyrillic breve [\02D8]"; # English US
|
||||||
name 3 1 0x0408 "\03BA\03C5\03C1\03B9\03BB\03BB\03B9\03BA\03CC \03B2\03C1\03B1\03C7\03CD [\02D8]"; # Greek
|
# name 3 1 0x0408 "\03BA\03C5\03C1\03B9\03BB\03BB\03B9\03BA\03CC \03B2\03C1\03B1\03C7\03CD [\02D8]"; # Greek
|
||||||
name 3 1 0x0419 "\043A\0438\0440\0438\043B\043B\0438\0447\0435\0441\043A\0430\044F \043A\0440\0430\0442\043A\0430 [\02D8]"; # Russian
|
# name 3 1 0x0419 "\043A\0438\0440\0438\043B\043B\0438\0447\0435\0441\043A\0430\044F \043A\0440\0430\0442\043A\0430 [\02D8]"; # Russian
|
||||||
};
|
# };
|
||||||
};
|
# };
|
||||||
|
#
|
||||||
lookup BREVE_CYR;
|
# lookup BREVE_CYR;
|
||||||
|
#
|
||||||
} cv11;
|
#} cv11;
|
||||||
|
|
||||||
#--------------------------------------
|
#--------------------------------------
|
||||||
feature cv12 { # Character Variant 12 (slashed zero)
|
feature cv12 { # Character Variant 12 (slashed zero)
|
||||||
@ -459,95 +538,6 @@ feature cv17 { # Character Variant 17 (alternate numeral one)
|
|||||||
|
|
||||||
} cv17;
|
} cv17;
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature numr { # Numerators
|
|
||||||
lookup NUMR {
|
|
||||||
sub @FIGURES_LINING by @FIGURES_NUMERATOR;
|
|
||||||
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_NUMERATOR;
|
|
||||||
sub one.a by one.numr;
|
|
||||||
} NUMR;
|
|
||||||
} numr;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature dnom { # Denominators
|
|
||||||
sub @FIGURES_LINING by @FIGURES_DENOMINATOR;
|
|
||||||
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_DENOMINATOR;
|
|
||||||
sub one.a by one.dnom;
|
|
||||||
} dnom;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature frac { # Fractions
|
|
||||||
@SPACE_DEFAULT = [space nbspace];
|
|
||||||
@SPACE_FRAC = [space.frac nbspace.frac];
|
|
||||||
@SLASH = [slash.frac fraction divisionslash];
|
|
||||||
|
|
||||||
lookup NUMR;
|
|
||||||
sub slash by slash.frac;
|
|
||||||
sub @FIGURES_NUMERATOR @SPACE_DEFAULT' by @SPACE_FRAC;
|
|
||||||
|
|
||||||
lookup ADJUST_WIDTHS_FRAC {
|
|
||||||
pos @SLASH <-300 0 -600 0>;
|
|
||||||
} ADJUST_WIDTHS_FRAC;
|
|
||||||
|
|
||||||
sub [fraction divisionslash slash.frac @FIGURES_DENOMINATOR @PUNCTUATION_DENOMINATOR] [@FIGURES_NUMERATOR @PUNCTUATION_NUMERATOR]' by [@FIGURES_DENOMINATOR @PUNCTUATION_DENOMINATOR];
|
|
||||||
sub @FIGURES_DENOMINATOR @SPACE_FRAC [@FIGURES_NUMERATOR @PUNCTUATION_NUMERATOR]' by [@FIGURES_DENOMINATOR @PUNCTUATION_DENOMINATOR];
|
|
||||||
} frac;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature ordn {
|
|
||||||
lookup SUPERIOR_LETTERS_MINISCULE {
|
|
||||||
sub @LETTERS_MINISCULE_LATIN_BASIC by @LETTERS_MINISCULE_LATIN_SUPERIOR;
|
|
||||||
sub [egrave eacute schwa] by [egrave.sups eacute.sups schwa.sups];
|
|
||||||
} SUPERIOR_LETTERS_MINISCULE;
|
|
||||||
} ordn;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature sups { # Superscript
|
|
||||||
lookup SUPERIOR_LETTERS_MINISCULE;
|
|
||||||
|
|
||||||
lookup SUPERIOR_NUMERALS_SORTS {
|
|
||||||
sub @FIGURES_LINING by @FIGURES_SUPERIOR;
|
|
||||||
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_SUPERIOR;
|
|
||||||
sub one.a by one.sups;
|
|
||||||
} SUPERIOR_NUMERALS_SORTS;
|
|
||||||
|
|
||||||
lookup SUPERIOR_SORTS {
|
|
||||||
sub [colon hyphen endash emdash] by [colon.sups hyphen.sups endash.sups emdash.sups];
|
|
||||||
} SUPERIOR_SORTS;
|
|
||||||
|
|
||||||
} sups;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature subs { # Subscript
|
|
||||||
lookup INFERIOR {
|
|
||||||
sub @FIGURES_LINING by @FIGURES_INFERIOR;
|
|
||||||
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_INFERIOR;
|
|
||||||
sub one.a by one.subs;
|
|
||||||
} INFERIOR;
|
|
||||||
} subs;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature sinf { # Scientific Inferiors
|
|
||||||
lookup INFERIOR;
|
|
||||||
} sinf;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature onum { # Oldstyle (Text) Figures
|
|
||||||
sub @FIGURES_LINING by @FIGURES_OLDSTYLE;
|
|
||||||
sub one.a by one.ao;
|
|
||||||
} onum;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature case { # Case-Sensitive Forms
|
|
||||||
sub @MARKS_CMB_ALL by @MARKS_CMB_ALL_CASE;
|
|
||||||
sub @FIGURES_LINING by @FIGURES_CASE;
|
|
||||||
sub @FIGURES_OLDSTYLE by @FIGURES_CASE;
|
|
||||||
sub one.a by one.ac;
|
|
||||||
sub ijacute by IJacute;
|
|
||||||
sub at by at.case;
|
|
||||||
# sub anoteleia by anoteleia.cap;
|
|
||||||
} case;
|
|
||||||
|
|
||||||
#--------------------------------------
|
#--------------------------------------
|
||||||
feature ss01 { # Stylistic Set 1 (typographic alternates)
|
feature ss01 { # Stylistic Set 1 (typographic alternates)
|
||||||
featureNames {
|
featureNames {
|
||||||
|
@ -61,11 +61,11 @@ dieresisacutecmb.cap dieresisgravecmb.cap dieresismacroncmb.cap dieresiscaroncmb
|
|||||||
@G_LC = [g gacute gcircumflex gbreve gdotaccent gcommaaccent gcaron gmacron gtilde g.sups];
|
@G_LC = [g gacute gcircumflex gbreve gdotaccent gcommaaccent gcaron gmacron gtilde g.sups];
|
||||||
@G_LC_ALT = [g.a gacute.a gcircumflex.a gbreve.a gdotaccent.a gcommaaccent.a gcaron.a gmacron.a gtilde.a g.supa];
|
@G_LC_ALT = [g.a gacute.a gcircumflex.a gbreve.a gdotaccent.a gcommaaccent.a gcaron.a gmacron.a gtilde.a g.supa];
|
||||||
|
|
||||||
@I_LC = [i dotlessi igrave iacute icircumflex itilde idieresis imacron icaron iogonek ihoi idotbelow ibreve istroke iogonek.d istroke.d iukran i.sups];
|
@I_LC = [i dotlessi igrave iacute icircumflex itilde idieresis imacron icaron iogonek ihoi idotbelow ibreve istroke iogonek.d istroke.d iukran yi i.sups];
|
||||||
@I_LC_ALT = [i.a dotlessi.a igrave.a iacute.a icircumflex.a itilde.a idieresis.a imacron.a icaron.a iogonek.a ihoi.a idotbelow.a ibreve.a istroke.a iogonek.da istroke.da iukran.a i.supa];
|
@I_LC_ALT = [i.a dotlessi.a igrave.a iacute.a icircumflex.a itilde.a idieresis.a imacron.a icaron.a iogonek.a ihoi.a idotbelow.a ibreve.a istroke.a iogonek.da istroke.da iukran.a yi.a i.supa];
|
||||||
|
|
||||||
@L_LC = [l lacute lcaron lcommaaccent ldotbelow ldotbelowmacron llinebelow lslash ldot lcat lmiddletilde lbelt];
|
@L_LC = [l lacute lcaron lcommaaccent ldotbelow ldotbelowmacron llinebelow lslash ldot lcat lmiddletilde lbelt palochka];
|
||||||
@L_LC_ALT = [l.a lacute.a lcaron.a lcommaaccent.a ldotbelow.a ldotbelowmacron.a llinebelow.a lslash.a ldot.a lcat.a lmiddletilde.a lbelt.a];
|
@L_LC_ALT = [l.a lacute.a lcaron.a lcommaaccent.a ldotbelow.a ldotbelowmacron.a llinebelow.a lslash.a ldot.a lcat.a lmiddletilde.a lbelt.a palochka.a];
|
||||||
|
|
||||||
#--------------------------------------
|
#--------------------------------------
|
||||||
languagesystem DFLT dflt; # Default
|
languagesystem DFLT dflt; # Default
|
||||||
@ -80,64 +80,6 @@ languagesystem grek dflt; # Greek default
|
|||||||
languagesystem cyrl dflt; # Cyrillic default
|
languagesystem cyrl dflt; # Cyrillic default
|
||||||
languagesystem cyrl SRB; # Serbian
|
languagesystem cyrl SRB; # Serbian
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
lookup A_LC_ALT {
|
|
||||||
sub @A_LC by @A_LC_ALT;
|
|
||||||
} A_LC_ALT;
|
|
||||||
|
|
||||||
lookup G_LC_ALT {
|
|
||||||
sub @G_LC by @G_LC_ALT;
|
|
||||||
} G_LC_ALT;
|
|
||||||
|
|
||||||
lookup I_LC_ALT { # includes i & l alternates
|
|
||||||
sub @I_LC by @I_LC_ALT;
|
|
||||||
sub @L_LC by @L_LC_ALT;
|
|
||||||
} I_LC_ALT;
|
|
||||||
|
|
||||||
lookup ENG_UC_SAMI { # preferred Eng shape for Sami languages
|
|
||||||
sub Eng by Eng.a;
|
|
||||||
} ENG_UC_SAMI;
|
|
||||||
|
|
||||||
lookup BETA_LC_ALT {
|
|
||||||
sub beta by beta.a;
|
|
||||||
} BETA_LC_ALT;
|
|
||||||
|
|
||||||
lookup THETA_LC_ALT {
|
|
||||||
sub theta by theta.a;
|
|
||||||
} THETA_LC_ALT;
|
|
||||||
|
|
||||||
lookup PHI_LC_ALT {
|
|
||||||
sub phi by phi.a;
|
|
||||||
} PHI_LC_ALT;
|
|
||||||
|
|
||||||
lookup BREVE_CYR { #preferred breve shape for Cyrillic script
|
|
||||||
sub [brevecmb brevecmb.cap] by [brevecmb.cyr brevecmb.cyrcap]; # combining marks
|
|
||||||
} BREVE_CYR;
|
|
||||||
|
|
||||||
lookup BE_LC_SRB {
|
|
||||||
sub be by be.srb;
|
|
||||||
} BE_LC_SRB;
|
|
||||||
|
|
||||||
lookup ZERO_SLASH {
|
|
||||||
sub [zero zero.onum zero.cap] by [zero.0 zero.0o zero.0c];
|
|
||||||
} ZERO_SLASH;
|
|
||||||
|
|
||||||
lookup HYPHEN_ALT {
|
|
||||||
sub [hyphen sfthyphen hyphentwo] by [hyphen.a sfthyphen.a hyphentwo.a];
|
|
||||||
} HYPHEN_ALT;
|
|
||||||
|
|
||||||
lookup ASTERISK_ALT {
|
|
||||||
sub asterisk by asterisk.a;
|
|
||||||
} ASTERISK_ALT;
|
|
||||||
|
|
||||||
lookup DOLLAR_ALT {
|
|
||||||
sub dollar by dollar.a;
|
|
||||||
} DOLLAR_ALT;
|
|
||||||
|
|
||||||
lookup ONE_ALT {
|
|
||||||
sub one by one.a;
|
|
||||||
} ONE_ALT;
|
|
||||||
|
|
||||||
#--------------------------------------
|
#--------------------------------------
|
||||||
#feature aalt { # Access All Alternates
|
#feature aalt { # Access All Alternates
|
||||||
# feature locl;
|
# feature locl;
|
||||||
@ -164,21 +106,28 @@ lookup ONE_ALT {
|
|||||||
feature locl { # Localized Forms
|
feature locl { # Localized Forms
|
||||||
|
|
||||||
script latn;
|
script latn;
|
||||||
|
|
||||||
language NSM exclude_dflt;
|
language NSM exclude_dflt;
|
||||||
lookup ENG_UC_SAMI;
|
lookup ENG_UC_SAMI { # preferred Eng shape for Sami languages
|
||||||
|
sub Eng by Eng.a;
|
||||||
|
} ENG_UC_SAMI;
|
||||||
|
|
||||||
language SKS exclude_dflt;
|
language SKS exclude_dflt;
|
||||||
lookup ENG_UC_SAMI;
|
lookup ENG_UC_SAMI;
|
||||||
|
|
||||||
script grek;
|
script grek;
|
||||||
sub [acutecmb gravecmb commaturnedabovecmb commaabovecmb] by [tonoscmb variacmb aspercmb leniscmb]; # combining marks
|
language dflt;
|
||||||
|
sub [acutecmb gravecmb commaturnedabovecmb commaabovecmb] by [tonoscmb variacmb aspercmb leniscmb]; # combining marks
|
||||||
|
|
||||||
script cyrl;
|
script cyrl;
|
||||||
lookup BREVE_CYR;
|
language dflt;
|
||||||
|
lookup BREVE_CYR { #preferred breve shape for Cyrillic script
|
||||||
|
sub [brevecmb brevecmb.cap] by [brevecmb.cyr brevecmb.cyrcap]; # combining marks
|
||||||
|
} BREVE_CYR;
|
||||||
|
|
||||||
language SRB include_dflt;
|
language SRB include_dflt;
|
||||||
lookup BE_LC_SRB;
|
lookup BE_LC_SRB {
|
||||||
|
sub be by be.srb;
|
||||||
|
} BE_LC_SRB;
|
||||||
|
|
||||||
} locl;
|
} locl;
|
||||||
|
|
||||||
@ -288,6 +237,136 @@ feature ccmp { # Glyph Composition / Decomposition
|
|||||||
|
|
||||||
} ccmp;
|
} ccmp;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature numr { # Numerators
|
||||||
|
lookup NUMR {
|
||||||
|
sub @FIGURES_LINING by @FIGURES_NUMERATOR;
|
||||||
|
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_NUMERATOR;
|
||||||
|
} NUMR;
|
||||||
|
} numr;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature dnom { # Denominators
|
||||||
|
sub @FIGURES_LINING by @FIGURES_DENOMINATOR;
|
||||||
|
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_DENOMINATOR;
|
||||||
|
} dnom;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature frac { # Fractions
|
||||||
|
@SPACE_DEFAULT = [space nbspace];
|
||||||
|
@SPACE_FRAC = [space.frac nbspace.frac];
|
||||||
|
@SLASH = [slash.frac fraction divisionslash];
|
||||||
|
|
||||||
|
lookup NUMR;
|
||||||
|
sub slash by slash.frac;
|
||||||
|
sub @FIGURES_NUMERATOR @SPACE_DEFAULT' by @SPACE_FRAC;
|
||||||
|
|
||||||
|
lookup ADJUST_WIDTHS_FRAC {
|
||||||
|
pos @SLASH <-300 0 -600 0>;
|
||||||
|
} ADJUST_WIDTHS_FRAC;
|
||||||
|
|
||||||
|
sub [fraction divisionslash slash.frac @FIGURES_DENOMINATOR @PUNCTUATION_DENOMINATOR] [@FIGURES_NUMERATOR @PUNCTUATION_NUMERATOR]' by [@FIGURES_DENOMINATOR @PUNCTUATION_DENOMINATOR];
|
||||||
|
sub @FIGURES_DENOMINATOR @SPACE_FRAC [@FIGURES_NUMERATOR @PUNCTUATION_NUMERATOR]' by [@FIGURES_DENOMINATOR @PUNCTUATION_DENOMINATOR];
|
||||||
|
} frac;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature ordn {
|
||||||
|
lookup SUPERIOR_LETTERS_MINISCULE {
|
||||||
|
sub @LETTERS_MINISCULE_LATIN_BASIC by @LETTERS_MINISCULE_LATIN_SUPERIOR;
|
||||||
|
sub [egrave eacute eogonek schwa hhook] by [egrave.sups eacute.sups eogonek.sups schwa.sups hhook.sups];
|
||||||
|
} SUPERIOR_LETTERS_MINISCULE;
|
||||||
|
} ordn;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature sups { # Superscript
|
||||||
|
lookup SUPERIOR_LETTERS_MINISCULE;
|
||||||
|
|
||||||
|
lookup SUPERIOR_NUMERALS_SORTS {
|
||||||
|
sub @FIGURES_LINING by @FIGURES_SUPERIOR;
|
||||||
|
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_SUPERIOR;
|
||||||
|
} SUPERIOR_NUMERALS_SORTS;
|
||||||
|
|
||||||
|
lookup SUPERIOR_SORTS {
|
||||||
|
sub [colon hyphen endash emdash] by [colon.sups hyphen.sups endash.sups emdash.sups];
|
||||||
|
} SUPERIOR_SORTS;
|
||||||
|
|
||||||
|
} sups;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature subs { # Subscript
|
||||||
|
lookup INFERIOR {
|
||||||
|
sub @FIGURES_LINING by @FIGURES_INFERIOR;
|
||||||
|
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_INFERIOR;
|
||||||
|
} INFERIOR;
|
||||||
|
} subs;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature sinf { # Scientific Inferiors
|
||||||
|
lookup INFERIOR;
|
||||||
|
} sinf;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature onum { # Oldstyle (Text) Figures
|
||||||
|
sub @FIGURES_LINING by @FIGURES_OLDSTYLE;
|
||||||
|
} onum;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
feature case { # Case-Sensitive Forms
|
||||||
|
sub @MARKS_CMB_ALL by @MARKS_CMB_ALL_CASE;
|
||||||
|
sub @FIGURES_LINING by @FIGURES_CASE;
|
||||||
|
sub @FIGURES_OLDSTYLE by @FIGURES_CASE;
|
||||||
|
sub one.a by one.ac;
|
||||||
|
sub ijacute by IJacute;
|
||||||
|
sub at by at.case;
|
||||||
|
sub anoteleia by anoteleia.cap;
|
||||||
|
} case;
|
||||||
|
|
||||||
|
#--------------------------------------
|
||||||
|
lookup A_LC_ALT {
|
||||||
|
sub @A_LC by @A_LC_ALT;
|
||||||
|
} A_LC_ALT;
|
||||||
|
|
||||||
|
lookup G_LC_ALT {
|
||||||
|
sub @G_LC by @G_LC_ALT;
|
||||||
|
} G_LC_ALT;
|
||||||
|
|
||||||
|
lookup I_LC_ALT { # includes i & l alternates
|
||||||
|
sub @I_LC by @I_LC_ALT;
|
||||||
|
sub @L_LC by @L_LC_ALT;
|
||||||
|
} I_LC_ALT;
|
||||||
|
|
||||||
|
lookup BETA_LC_ALT {
|
||||||
|
sub beta by beta.a;
|
||||||
|
} BETA_LC_ALT;
|
||||||
|
|
||||||
|
lookup THETA_LC_ALT {
|
||||||
|
sub theta by theta.a;
|
||||||
|
} THETA_LC_ALT;
|
||||||
|
|
||||||
|
lookup PHI_LC_ALT {
|
||||||
|
sub phi by phi.a;
|
||||||
|
} PHI_LC_ALT;
|
||||||
|
|
||||||
|
lookup ZERO_SLASH {
|
||||||
|
sub [zero zero.onum zero.cap] by [zero.0 zero.0o zero.0c];
|
||||||
|
} ZERO_SLASH;
|
||||||
|
|
||||||
|
lookup HYPHEN_ALT {
|
||||||
|
sub [hyphen sfthyphen hyphentwo] by [hyphen.a sfthyphen.a hyphentwo.a];
|
||||||
|
} HYPHEN_ALT;
|
||||||
|
|
||||||
|
lookup ASTERISK_ALT {
|
||||||
|
sub asterisk by asterisk.a;
|
||||||
|
} ASTERISK_ALT;
|
||||||
|
|
||||||
|
lookup DOLLAR_ALT {
|
||||||
|
sub dollar by dollar.a;
|
||||||
|
} DOLLAR_ALT;
|
||||||
|
|
||||||
|
lookup ONE_ALT {
|
||||||
|
sub one by one.a;
|
||||||
|
} ONE_ALT;
|
||||||
|
|
||||||
#--------------------------------------
|
#--------------------------------------
|
||||||
feature cv01 { # Character Variant 1 (alternate lowercase a)
|
feature cv01 { # Character Variant 1 (alternate lowercase a)
|
||||||
cvParameters {
|
cvParameters {
|
||||||
@ -484,95 +563,6 @@ feature cv17 { # Character Variant 17 (alternate numeral one)
|
|||||||
|
|
||||||
} cv17;
|
} cv17;
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature numr { # Numerators
|
|
||||||
lookup NUMR {
|
|
||||||
sub @FIGURES_LINING by @FIGURES_NUMERATOR;
|
|
||||||
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_NUMERATOR;
|
|
||||||
sub one.a by one.numr;
|
|
||||||
} NUMR;
|
|
||||||
} numr;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature dnom { # Denominators
|
|
||||||
sub @FIGURES_LINING by @FIGURES_DENOMINATOR;
|
|
||||||
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_DENOMINATOR;
|
|
||||||
sub one.a by one.dnom;
|
|
||||||
} dnom;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature frac { # Fractions
|
|
||||||
@SPACE_DEFAULT = [space nbspace];
|
|
||||||
@SPACE_FRAC = [space.frac nbspace.frac];
|
|
||||||
@SLASH = [slash.frac fraction divisionslash];
|
|
||||||
|
|
||||||
lookup NUMR;
|
|
||||||
sub slash by slash.frac;
|
|
||||||
sub @FIGURES_NUMERATOR @SPACE_DEFAULT' by @SPACE_FRAC;
|
|
||||||
|
|
||||||
lookup ADJUST_WIDTHS_FRAC {
|
|
||||||
pos @SLASH <-300 0 -600 0>;
|
|
||||||
} ADJUST_WIDTHS_FRAC;
|
|
||||||
|
|
||||||
sub [fraction divisionslash slash.frac @FIGURES_DENOMINATOR @PUNCTUATION_DENOMINATOR] [@FIGURES_NUMERATOR @PUNCTUATION_NUMERATOR]' by [@FIGURES_DENOMINATOR @PUNCTUATION_DENOMINATOR];
|
|
||||||
sub @FIGURES_DENOMINATOR @SPACE_FRAC [@FIGURES_NUMERATOR @PUNCTUATION_NUMERATOR]' by [@FIGURES_DENOMINATOR @PUNCTUATION_DENOMINATOR];
|
|
||||||
} frac;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature ordn {
|
|
||||||
lookup SUPERIOR_LETTERS_MINISCULE {
|
|
||||||
sub @LETTERS_MINISCULE_LATIN_BASIC by @LETTERS_MINISCULE_LATIN_SUPERIOR;
|
|
||||||
sub [egrave eacute schwa] by [egrave.sups eacute.sups schwa.sups];
|
|
||||||
} SUPERIOR_LETTERS_MINISCULE;
|
|
||||||
} ordn;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature sups { # Superscript
|
|
||||||
lookup SUPERIOR_LETTERS_MINISCULE;
|
|
||||||
|
|
||||||
lookup SUPERIOR_NUMERALS_SORTS {
|
|
||||||
sub @FIGURES_LINING by @FIGURES_SUPERIOR;
|
|
||||||
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_SUPERIOR;
|
|
||||||
sub one.a by one.sups;
|
|
||||||
} SUPERIOR_NUMERALS_SORTS;
|
|
||||||
|
|
||||||
lookup SUPERIOR_SORTS {
|
|
||||||
sub [colon hyphen endash emdash] by [colon.sups hyphen.sups endash.sups emdash.sups];
|
|
||||||
} SUPERIOR_SORTS;
|
|
||||||
|
|
||||||
} sups;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature subs { # Subscript
|
|
||||||
lookup INFERIOR {
|
|
||||||
sub @FIGURES_LINING by @FIGURES_INFERIOR;
|
|
||||||
sub @PUNCTUATION_FOR_SMALL_FIGURE_STYLES by @PUNCTUATION_INFERIOR;
|
|
||||||
sub one.a by one.subs;
|
|
||||||
} INFERIOR;
|
|
||||||
} subs;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature sinf { # Scientific Inferiors
|
|
||||||
lookup INFERIOR;
|
|
||||||
} sinf;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature onum { # Oldstyle (Text) Figures
|
|
||||||
sub @FIGURES_LINING by @FIGURES_OLDSTYLE;
|
|
||||||
sub one.a by one.ao;
|
|
||||||
} onum;
|
|
||||||
|
|
||||||
#--------------------------------------
|
|
||||||
feature case { # Case-Sensitive Forms
|
|
||||||
sub @MARKS_CMB_ALL by @MARKS_CMB_ALL_CASE;
|
|
||||||
sub @FIGURES_LINING by @FIGURES_CASE;
|
|
||||||
sub @FIGURES_OLDSTYLE by @FIGURES_CASE;
|
|
||||||
sub one.a by one.ac;
|
|
||||||
sub ijacute by IJacute;
|
|
||||||
sub at by at.case;
|
|
||||||
sub anoteleia by anoteleia.cap;
|
|
||||||
} case;
|
|
||||||
|
|
||||||
#--------------------------------------
|
#--------------------------------------
|
||||||
feature ss01 { # Stylistic Set 1 (typographic alternates)
|
feature ss01 { # Stylistic Set 1 (typographic alternates)
|
||||||
featureNames {
|
featureNames {
|
||||||
|
Loading…
Reference in New Issue
Block a user