diff options
Diffstat (limited to 'ukarpanghooth/ukarpanghooth.ufo/features.fea')
| -rw-r--r-- | ukarpanghooth/ukarpanghooth.ufo/features.fea | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/ukarpanghooth/ukarpanghooth.ufo/features.fea b/ukarpanghooth/ukarpanghooth.ufo/features.fea new file mode 100644 index 0000000..37118f1 --- /dev/null +++ b/ukarpanghooth/ukarpanghooth.ufo/features.fea @@ -0,0 +1,89 @@ +languagesystem DFLT dflt; +languagesystem latn dflt; + +@full = [ \a - \z ]; +@upper = [ \A - \Z ]; +@hfhz = [ \a.hfhz - \z.hfhz ]; +@hfvt = [ \a.hfvt - \z.hfvt ]; +@qrtr = [ \a.qrtr - \z.qrtr ]; +@all = [ @full @hfhz @hfvt @qrtr space space.hfhz space.hfvt space.qrtr ]; + +# GSUB +lookup full2qrtr { + sub [@full space] by [@qrtr space.qrtr]; +} full2qrtr; +lookup full2hfvt { + sub [@full space] by [@hfvt space.hfvt]; +} full2hfvt; +lookup full2hfhz { + sub [@full space] by [@hfhz space.hfhz]; +} full2hfhz; +feature calt { + lookup up2lo { + sub @upper by @full; + } up2lo; + lookup charblock { + sub @full' lookup full2qrtr + @full' lookup full2qrtr + @full' lookup full2qrtr + [@full space]' lookup full2qrtr; + sub @full' lookup full2qrtr + @full' lookup full2qrtr + [@full space]' lookup full2hfvt; + sub @full' lookup full2hfvt + [@full space]' lookup full2hfvt; + } charblock; +} calt; + +# GPOS +lookup qrtr1 { + pos @qrtr <300 300 0 0>; +} qrtr1; +lookup qrtr2 { + pos @qrtr <0 0 0 0>; +} qrtr2; +lookup qrtr3 { + pos @qrtr <-600 0 -300 0>; +} qrtr3; +lookup qrtr4 { + pos [@qrtr space.qrtr] <-600 300 -300 0>; +} qrtr4; +lookup hfvt1 { + pos [@hfvt space.hfvt] <-600 0 -300 0>; +} hfvt1; +lookup hfvt2 { + pos @hfvt <300 0 -300 0>; +} hfvt2; +lookup hfvt3 { + pos [@hfvt space.hfvt] <0 0 300 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; +} 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 ]; + +table GDEF { + GlyphClassDef @GDEF_Simple, , , ; + +} GDEF; + |
