diff options
| author | la-ninpre <aaoth@aaoth.xyz> | 2025-12-24 12:12:42 +0300 |
|---|---|---|
| committer | la-ninpre <aaoth@aaoth.xyz> | 2025-12-24 13:24:42 +0300 |
| commit | c075ae436be3b111574a75f6bfe6ff958581915a (patch) | |
| tree | 232e3f688edbda502305f0b6a28874e14f673202 /ukarpanghooth/ukarpanghooth.ufo | |
| parent | b0dbf9aa53d975f6d25779ce7ded03b1a5fac530 (diff) | |
| download | lipi-c075ae436be3b111574a75f6bfe6ff958581915a.tar.gz lipi-c075ae436be3b111574a75f6bfe6ff958581915a.zip | |
ukarpanghooth: refactor feature file
Diffstat (limited to 'ukarpanghooth/ukarpanghooth.ufo')
| -rw-r--r-- | ukarpanghooth/ukarpanghooth.ufo/features.fea | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/ukarpanghooth/ukarpanghooth.ufo/features.fea b/ukarpanghooth/ukarpanghooth.ufo/features.fea index 37118f1..bd49a3e 100644 --- a/ukarpanghooth/ukarpanghooth.ufo/features.fea +++ b/ukarpanghooth/ukarpanghooth.ufo/features.fea @@ -19,10 +19,11 @@ lookup full2hfhz { sub [@full space] by [@hfhz space.hfhz]; } full2hfhz; feature calt { + # the script is unicameral, so map caps to lowercase to simplify substitutions lookup up2lo { sub @upper by @full; } up2lo; - lookup charblock { + lookup blocksub { sub @full' lookup full2qrtr @full' lookup full2qrtr @full' lookup full2qrtr @@ -32,7 +33,7 @@ feature calt { [@full space]' lookup full2hfvt; sub @full' lookup full2hfvt [@full space]' lookup full2hfvt; - } charblock; + } blocksub; } calt; # GPOS @@ -52,35 +53,34 @@ lookup hfvt1 { pos [@hfvt space.hfvt] <-600 0 -300 0>; } hfvt1; lookup hfvt2 { - pos @hfvt <300 0 -300 0>; + pos @hfvt <300 0 0 0>; } hfvt2; lookup hfvt3 { - pos [@hfvt space.hfvt] <0 0 300 0>; + pos [@hfvt space.hfvt] <-300 0 0 0>; } hfvt3; feature kern { - pos @qrtr' lookup qrtr1 - @qrtr' lookup qrtr2 - @qrtr' lookup qrtr3 - [@qrtr space.qrtr]' lookup qrtr4; - pos @qrtr' lookup qrtr1 - @qrtr' lookup qrtr2 - [@hfvt space.hfvt]' lookup hfvt1; - pos @hfvt' lookup hfvt2 - [@hfvt space.hfvt]' lookup hfvt3; + lookup blockpos { + pos @qrtr' lookup qrtr1 + @qrtr' lookup qrtr2 + @qrtr' lookup qrtr3 + [@qrtr space.qrtr]' lookup qrtr4; + pos @qrtr' lookup qrtr1 + @qrtr' lookup qrtr2 + [@hfvt space.hfvt]' lookup hfvt1; + pos @hfvt' lookup hfvt2 + [@hfvt space.hfvt]' lookup hfvt3; + } blockpos; } kern; #Mark attachment classes (defined in GDEF, used in lookupflags) -@GDEF_Simple = [\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 \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 \space \a.hfvt \b.hfvt \c.hfvt - \d.hfvt \e.hfvt \f.hfvt \g.hfvt \h.hfvt \i.hfvt \j.hfvt \k.hfvt \l.hfvt \m.hfvt - \n.hfvt \o.hfvt \p.hfvt \q.hfvt \r.hfvt \s.hfvt \t.hfvt \u.hfvt \v.hfvt \w.hfvt - \x.hfvt \y.hfvt \z.hfvt \a.hfhz \b.hfhz \c.hfhz \d.hfhz \e.hfhz \f.hfhz \g.hfhz - \h.hfhz \i.hfhz \j.hfhz \k.hfhz \l.hfhz \m.hfhz \n.hfhz \o.hfhz \p.hfhz \q.hfhz - \r.hfhz \s.hfhz \t.hfhz \u.hfhz \v.hfhz \w.hfhz \x.hfhz \y.hfhz \z.hfhz \a.qrtr - \b.qrtr \c.qrtr \d.qrtr \e.qrtr \f.qrtr \g.qrtr \h.qrtr \i.qrtr \j.qrtr \k.qrtr - \l.qrtr \m.qrtr \n.qrtr \o.qrtr \p.qrtr \q.qrtr \r.qrtr \s.qrtr \t.qrtr \u.qrtr - \v.qrtr \w.qrtr \x.qrtr \y.qrtr \z.qrtr ]; +@GDEF_Simple = [ + \A -\Z \a - \z + \a.hfvt - \z.hfvt + \a.hfhz - \z.hfhz + \a.qrtr - \z.qrtr + \space \space.hfvt \space.hfhz \space.qrtr +]; table GDEF { GlyphClassDef @GDEF_Simple, , , ; |
