|
| 1 | +# ---------------------------- |
| 2 | +# INTEL MONO OPENTYPE CODE |
| 3 | +# ---------------------------- |
| 4 | + |
| 5 | +# ---------------- |
| 6 | +# Language Systems |
| 7 | +# ---------------- |
| 8 | + |
| 9 | +languagesystem DFLT dflt; |
| 10 | +languagesystem latn dflt; |
| 11 | +languagesystem latn TRK; |
| 12 | +languagesystem latn AZE; |
| 13 | +languagesystem latn CRT; |
| 14 | +languagesystem latn CAT; |
| 15 | + |
| 16 | + |
| 17 | +# ------- |
| 18 | +# Classes |
| 19 | +# ------- |
| 20 | + |
| 21 | +# Base Letters |
| 22 | +@ltrUC = [A B C D E F G H I J K L M N O P Q R S T U V W X Y Z uni1E9E AE OE Schwa Eng Thorn Eth Dcroat Hbar Tbar Lslash Oslash Aring Ohorn Uhorn I]; |
| 23 | +@ltrLC = [a b c d e f g h i j k l m n o p q r s t u v w x y z germandbls ae oe schwa eng thorn eth dcroat hbar tbar lslash oslash aring ohorn uhorn dotlessi]; |
| 24 | + |
| 25 | +# Figures |
| 26 | +@fig = [zero one two three four five six seven eight nine]; |
| 27 | +@figSup = [zero.sup one.sup two.sup three.sup four.sup five.sup six.sup seven.sup eight.sup nine.sup]; |
| 28 | +@figInf = [zero.inf one.inf two.inf three.inf four.inf five.inf six.inf seven.inf eight.inf nine.inf]; |
| 29 | +@figNum = [zero.num one.num two.num three.num four.num five.num six.num seven.num eight.num nine.num]; |
| 30 | +@figDen = [zero.den one.den two.den three.den four.den five.den six.den seven.den eight.den nine.den]; |
| 31 | + |
| 32 | + |
| 33 | +# --------------- |
| 34 | +# Localized Forms |
| 35 | +# --------------- |
| 36 | + |
| 37 | +feature locl { |
| 38 | + script latn; |
| 39 | + language TRK; |
| 40 | + lookup iTurkish { |
| 41 | + sub i by idotaccent; |
| 42 | + } iTurkish; |
| 43 | + language AZE; |
| 44 | + lookup iTurkish; |
| 45 | + language CRT; |
| 46 | + lookup iTurkish; |
| 47 | + language CAT; |
| 48 | + sub l periodcentered' l by middotcat; |
| 49 | + sub L periodcentered' L by middotcat.cap; |
| 50 | + # try fusing them |
| 51 | + sub L middotcat.cap by L.dot; |
| 52 | + sub L middotcat by L.dot; |
| 53 | + sub l middotcat by l.dot; |
| 54 | +} locl; |
| 55 | + |
| 56 | + |
| 57 | +# --------------------------------- |
| 58 | +# Glyph Composition / Decomposition |
| 59 | +# --------------------------------- |
| 60 | + |
| 61 | +feature ccmp { |
| 62 | + |
| 63 | + # Decompose unicode lowercase characters whose capital counterparts have no unicode. |
| 64 | + lookup Decomp { |
| 65 | + sub hlinebelow by h macronlowmod; |
| 66 | + sub jcaron by j caron; |
| 67 | + } Decomp; |
| 68 | + |
| 69 | + # Replace e ogonek with eogonek. |
| 70 | + lookup eogonek { |
| 71 | + sub e ogonekcmb by eogonek; |
| 72 | + } eogonek; |
| 73 | + |
| 74 | +} ccmp; |
| 75 | + |
| 76 | + |
| 77 | +# ---------- |
| 78 | +# Numerators |
| 79 | +# ---------- |
| 80 | + |
| 81 | +feature numr { |
| 82 | + sub @fig by @figNum; |
| 83 | +} numr; |
| 84 | + |
| 85 | +# ------------ |
| 86 | +# Denominators |
| 87 | +# ------------ |
| 88 | + |
| 89 | +feature dnom { |
| 90 | + sub @fig by @figDen; |
| 91 | +} dnom; |
| 92 | + |
| 93 | +# ----------- |
| 94 | +# Superscript |
| 95 | +# ----------- |
| 96 | + |
| 97 | +feature sups { |
| 98 | + sub @fig by @figSup; |
| 99 | +} sups; |
| 100 | + |
| 101 | +# --------------------- |
| 102 | +# Subscript & Inferiors |
| 103 | +# --------------------- |
| 104 | + |
| 105 | +feature subs { |
| 106 | + sub @fig by @figInf; |
| 107 | +} subs; |
| 108 | + |
| 109 | +feature sinf { |
| 110 | + sub @fig by @figInf; |
| 111 | +} sinf; |
| 112 | + |
| 113 | + |
| 114 | +# -------------- |
| 115 | +# Stylistic Sets |
| 116 | +# -------------- |
| 117 | + |
| 118 | +feature ss11 { |
| 119 | + featureNames { |
| 120 | + name "Raised Colon (Figures Only)"; # Windows English |
| 121 | + name 1 0 0 "Raised Colon (Figures Only)"; # Mac English |
| 122 | + }; |
| 123 | + lookup FigureColonContextual { |
| 124 | + sub @fig colon' @fig by colon.fig; |
| 125 | + } FigureColonContextual; |
| 126 | +} ss11; |
| 127 | + |
| 128 | +feature ss12 { |
| 129 | + featureNames { |
| 130 | + name "Raised Colon (Global)"; # Windows English |
| 131 | + name 1 0 0 "Raised Colon (Global)"; # Mac English |
| 132 | + }; |
| 133 | + lookup FigureColon { |
| 134 | + sub colon by colon.fig; |
| 135 | + } FigureColon; |
| 136 | +} ss12; |
| 137 | + |
| 138 | + |
| 139 | +# -------------------- |
| 140 | +# Stylistic Alternates |
| 141 | +# -------------------- |
| 142 | + |
| 143 | +feature salt { |
| 144 | + lookup FigureColon; # SS12 |
| 145 | +} salt; |
| 146 | + |
| 147 | + |
| 148 | + |
| 149 | +# -------------- |
| 150 | +# All Alternates |
| 151 | +# -------------- |
| 152 | + |
| 153 | +feature aalt { |
| 154 | + sub germandbls from [germandbls uni1E9E]; |
| 155 | + sub uni1E9E from [uni1E9E germandbls]; |
| 156 | + sub colon from [colon colon.fig]; |
| 157 | + sub colon.fig from [colon.fig colon]; |
| 158 | + sub eight from [eight eight.den eight.sup eight.num eight.inf]; |
| 159 | + sub eight.inf from [eight.inf eight eight.den eight.sup eight.num]; |
| 160 | + sub eight.num from [eight.num eight.inf eight eight.den eight.sup]; |
| 161 | + sub eight.sup from [eight.sup eight.num eight.inf eight eight.den]; |
| 162 | + sub eight.den from [eight.den eight.sup eight.num eight.inf eight]; |
| 163 | + sub five from [five five.inf five.num five.den five.sup]; |
| 164 | + sub five.sup from [five.sup five five.inf five.num five.den]; |
| 165 | + sub five.den from [five.den five.sup five five.inf five.num]; |
| 166 | + sub five.num from [five.num five.den five.sup five five.inf]; |
| 167 | + sub five.inf from [five.inf five.num five.den five.sup five]; |
| 168 | + sub four from [four four.sup four.num four.den four.inf]; |
| 169 | + sub four.inf from [four.inf four four.sup four.num four.den]; |
| 170 | + sub four.den from [four.den four.inf four four.sup four.num]; |
| 171 | + sub four.num from [four.num four.den four.inf four four.sup]; |
| 172 | + sub four.sup from [four.sup four.num four.den four.inf four]; |
| 173 | + sub nine from [nine nine.den nine.inf nine.num nine.sup]; |
| 174 | + sub nine.sup from [nine.sup nine nine.den nine.inf nine.num]; |
| 175 | + sub nine.num from [nine.num nine.sup nine nine.den nine.inf]; |
| 176 | + sub nine.inf from [nine.inf nine.num nine.sup nine nine.den]; |
| 177 | + sub nine.den from [nine.den nine.inf nine.num nine.sup nine]; |
| 178 | + sub one from [one one.den one.num one.inf one.sup]; |
| 179 | + sub one.sup from [one.sup one one.den one.num one.inf]; |
| 180 | + sub one.inf from [one.inf one.sup one one.den one.num]; |
| 181 | + sub one.num from [one.num one.inf one.sup one one.den]; |
| 182 | + sub one.den from [one.den one.num one.inf one.sup one]; |
| 183 | + sub seven from [seven seven.inf seven.num seven.sup seven.den]; |
| 184 | + sub seven.den from [seven.den seven seven.inf seven.num seven.sup]; |
| 185 | + sub seven.sup from [seven.sup seven.den seven seven.inf seven.num]; |
| 186 | + sub seven.num from [seven.num seven.sup seven.den seven seven.inf]; |
| 187 | + sub seven.inf from [seven.inf seven.num seven.sup seven.den seven]; |
| 188 | + sub six from [six six.num six.sup six.den six.inf]; |
| 189 | + sub six.inf from [six.inf six six.num six.sup six.den]; |
| 190 | + sub six.den from [six.den six.inf six six.num six.sup]; |
| 191 | + sub six.sup from [six.sup six.den six.inf six six.num]; |
| 192 | + sub six.num from [six.num six.sup six.den six.inf six]; |
| 193 | + sub three from [three three.inf three.den three.num three.sup]; |
| 194 | + sub three.sup from [three.sup three three.inf three.den three.num]; |
| 195 | + sub three.num from [three.num three.sup three three.inf three.den]; |
| 196 | + sub three.den from [three.den three.num three.sup three three.inf]; |
| 197 | + sub three.inf from [three.inf three.den three.num three.sup three]; |
| 198 | + sub two from [two two.inf two.sup two.num two.den]; |
| 199 | + sub two.den from [two.den two two.inf two.sup two.num]; |
| 200 | + sub two.num from [two.num two.den two two.inf two.sup]; |
| 201 | + sub two.sup from [two.sup two.num two.den two two.inf]; |
| 202 | + sub two.inf from [two.inf two.sup two.num two.den two]; |
| 203 | + sub zero from [zero zero.sup zero.num zero.den zero.inf]; |
| 204 | + sub zero.inf from [zero.inf zero zero.sup zero.num zero.den]; |
| 205 | + sub zero.den from [zero.den zero.inf zero zero.sup zero.num]; |
| 206 | + sub zero.num from [zero.num zero.den zero.inf zero zero.sup]; |
| 207 | + sub zero.sup from [zero.sup zero.num zero.den zero.inf zero]; |
| 208 | +} aalt; |
0 commit comments