moves feature code out of the glyphs file
This commit is contained in:
parent
3c2b3619da
commit
49cd0c56c8
28 changed files with 2590 additions and 145 deletions
5
Makefile
5
Makefile
|
|
@ -117,9 +117,12 @@ src/Inter.glyphs:
|
||||||
@true
|
@true
|
||||||
|
|
||||||
# instance UFOs <- master UFOs
|
# instance UFOs <- master UFOs
|
||||||
build/ufo/Inter-%.ufo: src/Inter.designspace $(all_ufo_masters)
|
build/ufo/Inter-%.ufo: build/ufo/features src/Inter.designspace $(all_ufo_masters)
|
||||||
misc/fontbuild instancegen src/Inter.designspace $*
|
misc/fontbuild instancegen src/Inter.designspace $*
|
||||||
|
|
||||||
|
build/ufo/features:
|
||||||
|
ln -s ../../src/features build/ufo/features
|
||||||
|
|
||||||
# make sure intermediate UFOs are not gc'd by make
|
# make sure intermediate UFOs are not gc'd by make
|
||||||
.PRECIOUS: build/ufo/Inter-%.ufo
|
.PRECIOUS: build/ufo/Inter-%.ufo
|
||||||
|
|
||||||
|
|
|
||||||
5
init.sh
5
init.sh
|
|
@ -97,7 +97,7 @@ else
|
||||||
# TODO: allow setting a flag to recreate venv
|
# TODO: allow setting a flag to recreate venv
|
||||||
if $clean; then
|
if $clean; then
|
||||||
rm -rf "$VENV_DIR"
|
rm -rf "$VENV_DIR"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ ! -d "$VENV_DIR/bin" ]]; then
|
if [[ ! -d "$VENV_DIR/bin" ]]; then
|
||||||
require_virtualenv
|
require_virtualenv
|
||||||
|
|
@ -402,6 +402,7 @@ else
|
||||||
echo -n " src/Inter-${style}.ufo/*.plist" >> "$GEN_MAKE_FILE"
|
echo -n " src/Inter-${style}.ufo/*.plist" >> "$GEN_MAKE_FILE"
|
||||||
echo -n " src/Inter-${style}.ufo/*.fea" >> "$GEN_MAKE_FILE"
|
echo -n " src/Inter-${style}.ufo/*.fea" >> "$GEN_MAKE_FILE"
|
||||||
echo -n " src/Inter-${style}.ufo/glyphs/*.plist" >> "$GEN_MAKE_FILE"
|
echo -n " src/Inter-${style}.ufo/glyphs/*.plist" >> "$GEN_MAKE_FILE"
|
||||||
|
echo -n " src/features/*" >> "$GEN_MAKE_FILE"
|
||||||
# echo -n " src/Inter-${style}.ufo/glyphs/*.glif" >> "$GEN_MAKE_FILE"
|
# echo -n " src/Inter-${style}.ufo/glyphs/*.glif" >> "$GEN_MAKE_FILE"
|
||||||
echo -n ")" >> "$GEN_MAKE_FILE"
|
echo -n ")" >> "$GEN_MAKE_FILE"
|
||||||
echo " src/Inter.designspace" >> "$GEN_MAKE_FILE"
|
echo " src/Inter.designspace" >> "$GEN_MAKE_FILE"
|
||||||
|
|
@ -520,7 +521,7 @@ else
|
||||||
# echo -n " ${style}" >> "$GEN_MAKE_FILE"
|
# echo -n " ${style}" >> "$GEN_MAKE_FILE"
|
||||||
# done
|
# done
|
||||||
# echo "" >> "$GEN_MAKE_FILE"
|
# echo "" >> "$GEN_MAKE_FILE"
|
||||||
|
|
||||||
|
|
||||||
echo -n ".PHONY: all_otf all_ttf_hinted all_ttf all_web all_web_hinted all_ufo all_check_const" >> "$GEN_MAKE_FILE"
|
echo -n ".PHONY: all_otf all_ttf_hinted all_ttf all_web all_web_hinted all_ufo all_check_const" >> "$GEN_MAKE_FILE"
|
||||||
for style in "${all_styles[@]}"; do
|
for style in "${all_styles[@]}"; do
|
||||||
|
|
|
||||||
719
src/Inter.glyphs
719
src/Inter.glyphs
File diff suppressed because one or more lines are too long
21
src/features/README.md
Normal file
21
src/features/README.md
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
# OpenType features
|
||||||
|
|
||||||
|
This directory contains most (but not all) OpenType feature code.
|
||||||
|
|
||||||
|
- Some features are maintained by the Glyphs application and are stored in the .glyphs file.
|
||||||
|
- The order of features are defined in the .glyphs file
|
||||||
|
|
||||||
|
Each feature file in this directory is automatically wrapped in a `feature {...}` block.
|
||||||
|
For example, `cv07.fea` contains the following code:
|
||||||
|
|
||||||
|
```fea
|
||||||
|
sub germandbls by germandbls.1;
|
||||||
|
```
|
||||||
|
|
||||||
|
And when the font is compiled, it actually becomes:
|
||||||
|
|
||||||
|
```
|
||||||
|
feature cv07 {
|
||||||
|
sub germandbls by germandbls.1;
|
||||||
|
}
|
||||||
|
```
|
||||||
237
src/features/calt.fea
Normal file
237
src/features/calt.fea
Normal file
|
|
@ -0,0 +1,237 @@
|
||||||
|
# cap-height tall glyphs
|
||||||
|
@UC = [
|
||||||
|
@Uppercase
|
||||||
|
@Numeral
|
||||||
|
|
||||||
|
# punctuation
|
||||||
|
ampersand exclam exclamdbl exclamdown uni2049 question uni2047 uni2048
|
||||||
|
questiondown interrobang invertedinterrobang bar paragraph
|
||||||
|
|
||||||
|
# currency
|
||||||
|
dollar cent yen sterling florin uni20BA uni20BD euro uni20B9 tenge peseta
|
||||||
|
peso kip won lira austral hryvnia naira guarani coloncurrency cedi cruzeiro
|
||||||
|
tugrik uni20AF mill afii57636 manat rupee lari franc
|
||||||
|
|
||||||
|
# cap-tall symbols
|
||||||
|
numero triagrt triagdn triagup warningSign blackleftpointingtriangle
|
||||||
|
circleblack circlewhite
|
||||||
|
diamondblack diamondblack_x diamondwhite diamondwhite_x
|
||||||
|
sunWithRays blackSunWithRays
|
||||||
|
heartWhiteSuit heartBlackSuit heavyBlackHeart
|
||||||
|
upBlackArrow upWhiteArrow
|
||||||
|
capslock placeofinterestsign control projective option alternativekeysymbol
|
||||||
|
brokenCircleNorthWestArrow anticlockwiseOpenCircleArrow
|
||||||
|
clockwiseOpenCircleArrow
|
||||||
|
deleteleft deleteright clear ejectsymbol
|
||||||
|
|
||||||
|
# percent and fractions
|
||||||
|
onehalf onethird onequarter threequarters fivesixths onefraction seveneighths
|
||||||
|
oneeighth fiveeighths threeeighths percent perthousand pertenthousand uni214D
|
||||||
|
cadauna careof accountof addresssubject
|
||||||
|
];
|
||||||
|
|
||||||
|
# x-height tall glyphs
|
||||||
|
@LC = [
|
||||||
|
@Lowercase
|
||||||
|
];
|
||||||
|
|
||||||
|
@CASE_DELIM_L = [
|
||||||
|
braceleft braceright
|
||||||
|
bracketleft bracketright
|
||||||
|
parenleft parenright
|
||||||
|
];
|
||||||
|
@CASE_NONDELIM_L = [
|
||||||
|
at
|
||||||
|
multiply
|
||||||
|
minus
|
||||||
|
plus
|
||||||
|
plusminus
|
||||||
|
divide
|
||||||
|
equal
|
||||||
|
notequal
|
||||||
|
endash
|
||||||
|
figuredash
|
||||||
|
emdash
|
||||||
|
hyphen
|
||||||
|
bullet
|
||||||
|
openbullet
|
||||||
|
hyphenbullet
|
||||||
|
trianglebullet
|
||||||
|
blackleftbullet
|
||||||
|
blackrightbullet
|
||||||
|
leftArrow
|
||||||
|
leftLongArrow
|
||||||
|
leftLongArrow2
|
||||||
|
rightArrow
|
||||||
|
rightLongArrow
|
||||||
|
rightLongArrow2
|
||||||
|
leftRightArrow
|
||||||
|
leftRightLongArrow
|
||||||
|
colon
|
||||||
|
approxequal
|
||||||
|
asciitilde
|
||||||
|
less
|
||||||
|
greater
|
||||||
|
lessequal
|
||||||
|
greaterequal
|
||||||
|
];
|
||||||
|
@CASE_L = [
|
||||||
|
@CASE_DELIM_L
|
||||||
|
@CASE_NONDELIM_L
|
||||||
|
];
|
||||||
|
|
||||||
|
@CASE_DELIM_R = [
|
||||||
|
braceleft.case braceright.case
|
||||||
|
bracketleft.case bracketright.case
|
||||||
|
parenleft.case parenright.case
|
||||||
|
];
|
||||||
|
@CASE_NONDELIM_R = [
|
||||||
|
at.case
|
||||||
|
multiply.case
|
||||||
|
minus.case
|
||||||
|
plus.case
|
||||||
|
plusminus.case
|
||||||
|
divide.case
|
||||||
|
equal.case
|
||||||
|
notequal.case
|
||||||
|
endash.case
|
||||||
|
figuredash.case
|
||||||
|
emdash.case
|
||||||
|
hyphen.case
|
||||||
|
bullet.case
|
||||||
|
openbullet.case
|
||||||
|
hyphenbullet.case
|
||||||
|
trianglebullet.case
|
||||||
|
blackleftbullet.case
|
||||||
|
blackrightbullet.case
|
||||||
|
leftArrow.case
|
||||||
|
leftLongArrow.case
|
||||||
|
leftLongArrow2.case
|
||||||
|
rightArrow.case
|
||||||
|
rightLongArrow.case
|
||||||
|
rightLongArrow2.case
|
||||||
|
leftRightArrow.case
|
||||||
|
leftRightLongArrow.case
|
||||||
|
colon.case
|
||||||
|
approxequal.case
|
||||||
|
asciitilde.case
|
||||||
|
less.case
|
||||||
|
greater.case
|
||||||
|
lessequal.case
|
||||||
|
greaterequal.case
|
||||||
|
];
|
||||||
|
@CASE_R = [
|
||||||
|
@CASE_DELIM_R
|
||||||
|
@CASE_NONDELIM_R
|
||||||
|
];
|
||||||
|
|
||||||
|
@DASH = [
|
||||||
|
hyphen hyphen.case
|
||||||
|
endash endash.case
|
||||||
|
emdash emdash.case
|
||||||
|
minus minus.case
|
||||||
|
];
|
||||||
|
|
||||||
|
# ---------------------------------------------------
|
||||||
|
|
||||||
|
# :-)
|
||||||
|
sub colon' @DASH [parenright parenright.case] by colon.case;
|
||||||
|
sub [colon colon.case] hyphen' [parenright parenright.case] by hyphen.case;
|
||||||
|
sub [colon colon.case] endash' [parenright parenright.case] by endash.case;
|
||||||
|
sub [colon colon.case] emdash' [parenright parenright.case] by emdash.case;
|
||||||
|
sub [colon colon.case] @DASH parenright' by parenright.case;
|
||||||
|
|
||||||
|
# A foo' -> A foo.case
|
||||||
|
#
|
||||||
|
# ignore subs adjacent to lower case
|
||||||
|
#
|
||||||
|
# x[]X
|
||||||
|
ignore sub @LC @CASE_DELIM_L @CASE_DELIM_L @UC;
|
||||||
|
ignore sub @LC @CASE_DELIM_L @UC;
|
||||||
|
ignore sub @LC @CASE_DELIM_L @Whitespace @UC;
|
||||||
|
ignore sub @LC @CASE_DELIM_L @Whitespace @Whitespace @UC;
|
||||||
|
#
|
||||||
|
# short runs of uc-lc, e.g "(Xx)", "[Zzz]"
|
||||||
|
ignore sub @CASE_DELIM_L @UC @LC @CASE_DELIM_L;
|
||||||
|
ignore sub @CASE_DELIM_L @UC @All @LC @CASE_DELIM_L;
|
||||||
|
#
|
||||||
|
# e.g. "x-"
|
||||||
|
# TODO: figure out how to ignore "x--A"
|
||||||
|
ignore sub @LC @CASE_L;
|
||||||
|
#
|
||||||
|
# e.g. "-x", "--x", "---x", "----x", "-----x"
|
||||||
|
ignore sub @CASE_L @LC;
|
||||||
|
ignore sub @CASE_L @CASE_L @LC;
|
||||||
|
ignore sub @CASE_L @CASE_L @CASE_L @LC;
|
||||||
|
ignore sub @CASE_L @CASE_L @CASE_L @CASE_L @LC;
|
||||||
|
ignore sub @CASE_L @CASE_L @CASE_L @CASE_L @CASE_L @LC;
|
||||||
|
#
|
||||||
|
# pairs with space, e.g. "( ) M" since we don't support subbing
|
||||||
|
# all on the left side.
|
||||||
|
ignore sub @CASE_DELIM_L @Whitespace @CASE_DELIM_L @Whitespace [ @UC @CASE_R ];
|
||||||
|
ignore sub @CASE_DELIM_L @CASE_DELIM_L @Whitespace [ @UC @CASE_R ];
|
||||||
|
#
|
||||||
|
# e.g. "A-", "A -", "A -"
|
||||||
|
sub [ @UC @CASE_R ] @CASE_L' by @CASE_R;
|
||||||
|
sub [ @UC @CASE_R ] @Whitespace @CASE_L' by @CASE_R;
|
||||||
|
sub [ @UC @CASE_R ] @Whitespace @Whitespace @CASE_L' by @CASE_R;
|
||||||
|
|
||||||
|
# foo' foo foo foo foo A -> foo.case foo foo foo foo A
|
||||||
|
# foo' foo foo foo A -> foo.case foo foo foo A
|
||||||
|
# foo' foo foo A -> foo.case foo foo A
|
||||||
|
# foo' foo A -> foo.case foo A
|
||||||
|
# foo' A -> foo.case A
|
||||||
|
# Note: since we look quite far back, sequences like x{}[]M will case both
|
||||||
|
# the square brackets next to M _and_ the curly braces to become .case
|
||||||
|
#
|
||||||
|
# e.g. "-A", "--A", "---A", "----A", "-----A"
|
||||||
|
sub @CASE_L' [ @UC @CASE_R ] by @CASE_R;
|
||||||
|
sub @CASE_L' @CASE_L [ @CASE_R @UC ] by @CASE_R;
|
||||||
|
sub @CASE_L' @CASE_L @CASE_L [ @CASE_R @UC ] by @CASE_R;
|
||||||
|
sub @CASE_L' @CASE_L @CASE_L @CASE_L [ @CASE_R @UC ] by @CASE_R;
|
||||||
|
sub @CASE_L' @CASE_L @CASE_L @CASE_L @CASE_L [ @CASE_R @UC ] by @CASE_R;
|
||||||
|
#
|
||||||
|
# e.g. "- A", "-- A", "--- A", "---- A", "----- A"
|
||||||
|
sub @CASE_L' @Whitespace [ @UC @CASE_R ] by @CASE_R;
|
||||||
|
sub @CASE_L' @CASE_L @Whitespace [ @CASE_R @UC ] by @CASE_R;
|
||||||
|
sub @CASE_L' @CASE_L @CASE_L @Whitespace [ @CASE_R @UC ] by @CASE_R;
|
||||||
|
sub @CASE_L' @CASE_L @CASE_L @CASE_L @Whitespace [ @CASE_R @UC ] by @CASE_R;
|
||||||
|
sub @CASE_L' @CASE_L @CASE_L @CASE_L @CASE_L @Whitespace [ @CASE_R @UC ] by @CASE_R;
|
||||||
|
#
|
||||||
|
# e.g. "- A", "-- A", "--- A", "---- A", "----- A"
|
||||||
|
sub @CASE_L' @Whitespace @Whitespace [ @UC @CASE_R ] by @CASE_R;
|
||||||
|
sub @CASE_L' @CASE_L @Whitespace @Whitespace [ @CASE_R @UC ] by @CASE_R;
|
||||||
|
sub @CASE_L' @CASE_L @CASE_L @Whitespace @Whitespace [ @CASE_R @UC ] by @CASE_R;
|
||||||
|
sub @CASE_L' @CASE_L @CASE_L @CASE_L @Whitespace @Whitespace [ @CASE_R @UC ] by @CASE_R;
|
||||||
|
sub @CASE_L' @CASE_L @CASE_L @CASE_L @CASE_L @Whitespace @Whitespace [ @CASE_R @UC ] by @CASE_R;
|
||||||
|
sub @CASE_L' @Whitespace @Whitespace @Whitespace [ @UC @CASE_R ] by @CASE_R; # e.g. "- A"
|
||||||
|
|
||||||
|
# X(_)
|
||||||
|
@Punctuation = [
|
||||||
|
slash bar quoteleft quoteright apostrophemod quotesingle quotedbl
|
||||||
|
quotedblleft quotedblright quotedblbase quotesinglbase prime doubleprime
|
||||||
|
tripleprime quadrupleprime primerev doubleprimerev tripleprimerev primemod
|
||||||
|
doubleprimemod comma period ellipsis twodotleader semicolon underscore
|
||||||
|
asciicircum circumflex
|
||||||
|
asterisk
|
||||||
|
];
|
||||||
|
sub @CASE_DELIM_R @Punctuation @CASE_DELIM_L' by @CASE_DELIM_R;
|
||||||
|
|
||||||
|
# in between number position adjustment, e.g. 3x4 -> 3×4
|
||||||
|
@between_num_L = [
|
||||||
|
multiply
|
||||||
|
asterisk
|
||||||
|
];
|
||||||
|
@between_num_R = [
|
||||||
|
multiply.case
|
||||||
|
asterisk.case
|
||||||
|
];
|
||||||
|
sub @Numeral @between_num_L' @Numeral by @between_num_R; # 3*9
|
||||||
|
sub @Numeral @Whitespace @between_num_L' @Numeral by @between_num_R; # 3 *9
|
||||||
|
sub @Numeral @Whitespace @Whitespace @between_num_L' @Numeral by @between_num_R; # 3 *9
|
||||||
|
sub @Numeral @between_num_L' @Whitespace @Numeral by @between_num_R; # 3* 9
|
||||||
|
sub @Numeral @Whitespace @between_num_L' @Whitespace @Numeral by @between_num_R; # 3 * 9
|
||||||
|
sub @Numeral @Whitespace @Whitespace @between_num_L' @Whitespace @Numeral by @between_num_R; # 3 * 9
|
||||||
|
sub @Numeral @between_num_L' @Whitespace @Whitespace @Numeral by @between_num_R; # 3* 9
|
||||||
|
sub @Numeral @Whitespace @between_num_L' @Whitespace @Whitespace @Numeral by @between_num_R; # 3 * 9
|
||||||
|
sub @Numeral @Whitespace @Whitespace @between_num_L' @Whitespace @Whitespace @Numeral by @between_num_R; # 3 * 9
|
||||||
556
src/features/ccmp.fea
Normal file
556
src/features/ccmp.fea
Normal file
|
|
@ -0,0 +1,556 @@
|
||||||
|
@CCMP_ACC = [
|
||||||
|
gravecomb acutecomb tildecomb brevetildecomb.cn brevehookcomb.cn
|
||||||
|
breveacutecomb.cn circumflextildecomb.cn circumflexhookcomb.cn
|
||||||
|
circumflexgravecomb.cn circumflexacutecomb.cn brevegravecomb.cn
|
||||||
|
macroncomb dieresismacroncomb.cn dieresisacutecomb.cn
|
||||||
|
dieresiscaroncomb.cn dieresisgravecomb.cn dotmacroncomb.cn
|
||||||
|
tildeacutecomb macrongravecomb.cn macronacutecomb.cn
|
||||||
|
macrondieresiscomb.cn acutedotcomb.cn carondotcomb.cn
|
||||||
|
tildemacroncomb.cn tildedieresiscomb.cn circumflexnosp overscorenosp
|
||||||
|
brevenosp dotnosp dieresisnosp hook ringnosp acutedblnosp caroncmb
|
||||||
|
linevertnosp linevertdblnosp dblgravecmb candrabindunosp breveinvnosp
|
||||||
|
commaturnsupnosp commaabovecmb commasuprevnosp commaaboverightcmb
|
||||||
|
anglesupnosp hornnosp xsupnosp tildevertsupnosp overscoredblnosp
|
||||||
|
graveleftnosp acuterightnosp perispomenigreekcmb koroniscmb
|
||||||
|
diaeresistonosnosp uni0346 uni034A uni034B uni034C arrowheadrightabovecomb uni0351
|
||||||
|
uni0352 uni0357 uni0358 uni035B uni1DC0 uni1DC1 uni1DC3 uni1DC4
|
||||||
|
uni1DC5 uni1DC6 uni1DC7 uni1DC8 uni1DC9 uni1DCB uni1DCC uni1DCD
|
||||||
|
uni1DCE uni1DD1 uni1DD2 uni1DD3 uni1DD4 uni1DD5 uni1DD6 uni1DD7
|
||||||
|
uni1DD8 uni1DD9 uni1DDA uni1DDB uni1DDC uni1DDD uni1DDE uni1DDF
|
||||||
|
uni1DE0 uni1DE1 uni1DE2 uni1DE3 uni1DE4 uni1DE5 uni1DE6 uni1DE7
|
||||||
|
uni1DE8 uni1DE9 uni1DEA uni1DEB uni1DEC uni1DED uni1DEE uni1DEF
|
||||||
|
uni1DF0 uni1DF1 uni1DF2 uni1DF3 uni1DF4 uni1DF5 uni1DFE uni0363
|
||||||
|
uni0364 uni0365 uni0366 uni0367 uni0368 uni0369 uni036A uni036B
|
||||||
|
uni036C uni036D uni036E uni036F titlocyrilliccmb
|
||||||
|
palatalizationcyrilliccmb dasiapneumatacyrilliccmb
|
||||||
|
psilipneumatacyrilliccmb uni0487 uni20F0 uniA69F uni2DFF uni20DC
|
||||||
|
uniFE20 uniFE21 uniFE22 uniFE23 uniFE24 uniFE25 uniFE26
|
||||||
|
];
|
||||||
|
|
||||||
|
# Transpose sequences like /i /gravecomb -> /idotless /gravecomb
|
||||||
|
lookup ccmp02 {
|
||||||
|
sub i' @CCMP_ACC by idotless;
|
||||||
|
sub j' @CCMP_ACC by jdotless;
|
||||||
|
sub ibar' @CCMP_ACC by uni0268.ccmp;
|
||||||
|
sub iogonek' @CCMP_ACC by uni012F.ccmp; # iogonek is generated
|
||||||
|
sub uni0249' @CCMP_ACC by uni0249.ccmp;
|
||||||
|
sub jcrosstail' @CCMP_ACC by jcrosstail.ccmp;
|
||||||
|
sub yotgreek' @CCMP_ACC by jdotless;
|
||||||
|
sub icyrillic' @CCMP_ACC by idotless;
|
||||||
|
sub jecyrillic' @CCMP_ACC by jdotless;
|
||||||
|
sub itildebelow' @CCMP_ACC by uni1E2D.ccmp; # uni1E2D.ccmp is generated
|
||||||
|
sub idotbelow' @CCMP_ACC by uni1ECB.ccmp; # both are generated
|
||||||
|
sub i.numr' @CCMP_ACC by uni2071.ccmp;
|
||||||
|
} ccmp02;
|
||||||
|
|
||||||
|
lookup ccmp03 {
|
||||||
|
sub d caroncmb by dcaron;
|
||||||
|
sub l caroncmb by lcaron;
|
||||||
|
sub t caroncmb by tcaron;
|
||||||
|
|
||||||
|
sub A gravecomb by Agrave;
|
||||||
|
sub A acutecomb by Aacute;
|
||||||
|
sub A circumflexnosp by Acircumflex;
|
||||||
|
sub A tildecomb by Atilde;
|
||||||
|
sub A dieresisnosp by Adieresis;
|
||||||
|
sub A ringnosp by Aring;
|
||||||
|
sub A ringacute.cn by Aringacute;
|
||||||
|
sub C cedillanosp by Ccedilla;
|
||||||
|
sub E gravecomb by Egrave;
|
||||||
|
sub E acutecomb by Eacute;
|
||||||
|
sub E circumflexnosp by Ecircumflex;
|
||||||
|
sub E dieresisnosp by Edieresis;
|
||||||
|
sub I gravecomb by Igrave;
|
||||||
|
sub I acutecomb by Iacute;
|
||||||
|
sub I circumflexnosp by Icircumflex;
|
||||||
|
sub I dieresisnosp by Idieresis;
|
||||||
|
sub N tildecomb by Ntilde;
|
||||||
|
sub O gravecomb by Ograve;
|
||||||
|
sub O acutecomb by Oacute;
|
||||||
|
sub O circumflexnosp by Ocircumflex;
|
||||||
|
sub O tildecomb by Otilde;
|
||||||
|
sub O dieresisnosp by Odieresis;
|
||||||
|
sub U gravecomb by Ugrave;
|
||||||
|
sub U acutecomb by Uacute;
|
||||||
|
sub U circumflexnosp by Ucircumflex;
|
||||||
|
sub U dieresisnosp by Udieresis;
|
||||||
|
sub Y acutecomb by Yacute;
|
||||||
|
sub a gravecomb by agrave;
|
||||||
|
sub a acutecomb by aacute;
|
||||||
|
sub a circumflexnosp by acircumflex;
|
||||||
|
sub a tildecomb by atilde;
|
||||||
|
sub a dieresisnosp by adieresis;
|
||||||
|
sub a ringnosp by aring;
|
||||||
|
sub a ringacute.cn by aringacute;
|
||||||
|
sub c cedillanosp by ccedilla;
|
||||||
|
sub e gravecomb by egrave;
|
||||||
|
sub e acutecomb by eacute;
|
||||||
|
sub e circumflexnosp by ecircumflex;
|
||||||
|
sub e dieresisnosp by edieresis;
|
||||||
|
sub idotless gravecomb by igrave;
|
||||||
|
sub idotless acutecomb by iacute;
|
||||||
|
sub idotless circumflexnosp by icircumflex;
|
||||||
|
sub idotless dieresisnosp by idieresis;
|
||||||
|
sub n tildecomb by ntilde;
|
||||||
|
sub o gravecomb by ograve;
|
||||||
|
sub o acutecomb by oacute;
|
||||||
|
sub o circumflexnosp by ocircumflex;
|
||||||
|
sub o tildecomb by otilde;
|
||||||
|
sub o dieresisnosp by odieresis;
|
||||||
|
sub u gravecomb by ugrave;
|
||||||
|
sub u acutecomb by uacute;
|
||||||
|
sub u circumflexnosp by ucircumflex;
|
||||||
|
sub u dieresisnosp by udieresis;
|
||||||
|
sub y acutecomb by yacute;
|
||||||
|
sub y dieresisnosp by ydieresis;
|
||||||
|
sub A macroncomb by Amacron;
|
||||||
|
sub a macroncomb by amacron;
|
||||||
|
sub A brevenosp by Abreve;
|
||||||
|
sub a brevenosp by abreve;
|
||||||
|
sub A ogoneknosp by Aogonek;
|
||||||
|
sub a ogoneknosp by aogonek;
|
||||||
|
sub C acutecomb by Cacute;
|
||||||
|
sub c acutecomb by cacute;
|
||||||
|
sub C circumflexnosp by Ccircumflex;
|
||||||
|
sub c circumflexnosp by ccircumflex;
|
||||||
|
sub C dotnosp by Cdotaccent;
|
||||||
|
sub c dotnosp by cdotaccent;
|
||||||
|
sub C caroncmb by Ccaron;
|
||||||
|
sub c caroncmb by ccaron;
|
||||||
|
sub D caroncmb by Dcaron;
|
||||||
|
sub E macroncomb by Emacron;
|
||||||
|
sub e macroncomb by emacron;
|
||||||
|
sub E brevenosp by Ebreve;
|
||||||
|
sub e brevenosp by ebreve;
|
||||||
|
sub E dotnosp by Edotaccent;
|
||||||
|
sub e dotnosp by edotaccent;
|
||||||
|
sub E ogoneknosp by Eogonek;
|
||||||
|
sub e ogoneknosp by eogonek;
|
||||||
|
sub E caroncmb by Ecaron;
|
||||||
|
sub e caroncmb by ecaron;
|
||||||
|
sub G circumflexnosp by Gcircumflex;
|
||||||
|
sub g circumflexnosp by gcircumflex;
|
||||||
|
sub G brevenosp by Gbreve;
|
||||||
|
sub g brevenosp by gbreve;
|
||||||
|
sub G dotnosp by Gdotaccent;
|
||||||
|
sub g dotnosp by gdotaccent;
|
||||||
|
sub G commaaccent by Gcommaaccent;
|
||||||
|
sub g commaaccentrotate.cn by gcommaaccent;
|
||||||
|
sub H circumflexnosp by Hcircumflex;
|
||||||
|
sub h circumflexnosp by hcircumflex;
|
||||||
|
sub I tildecomb by Itilde;
|
||||||
|
sub idotless tildecomb by itilde;
|
||||||
|
sub I macroncomb by Imacron;
|
||||||
|
sub idotless macroncomb by imacron;
|
||||||
|
sub I brevenosp by Ibreve;
|
||||||
|
sub idotless brevenosp by ibreve;
|
||||||
|
sub I ogoneknosp by Iogonek;
|
||||||
|
sub i ogoneknosp by iogonek;
|
||||||
|
sub I dotnosp by Idotaccent;
|
||||||
|
sub J circumflexnosp by Jcircumflex;
|
||||||
|
sub jdotless circumflexnosp by jcircumflex;
|
||||||
|
sub K commaaccent by Kcommaaccent;
|
||||||
|
sub k commaaccent by kcommaaccent;
|
||||||
|
sub L acutecomb by Lacute;
|
||||||
|
sub l acutecomb by lacute;
|
||||||
|
sub L commaaccent by Lcommaaccent;
|
||||||
|
sub l commaaccent by lcommaaccent;
|
||||||
|
sub L dotnosp by Ldot;
|
||||||
|
sub l dotnosp by ldot;
|
||||||
|
sub N acutecomb by Nacute;
|
||||||
|
sub n acutecomb by nacute;
|
||||||
|
sub N commaaccent by Ncommaaccent;
|
||||||
|
sub n commaaccent by ncommaaccent;
|
||||||
|
sub N caroncmb by Ncaron;
|
||||||
|
sub n caroncmb by ncaron;
|
||||||
|
sub O macroncomb by Omacron;
|
||||||
|
sub o macroncomb by omacron;
|
||||||
|
sub O brevenosp by Obreve;
|
||||||
|
sub o brevenosp by obreve;
|
||||||
|
sub O acutedblnosp by Ohungarumlaut;
|
||||||
|
sub o acutedblnosp by ohungarumlaut;
|
||||||
|
sub R acutecomb by Racute;
|
||||||
|
sub r acutecomb by racute;
|
||||||
|
sub R commaaccent by Rcommaaccent;
|
||||||
|
sub r commaaccent by rcommaaccent;
|
||||||
|
sub R caroncmb by Rcaron;
|
||||||
|
sub r caroncmb by rcaron;
|
||||||
|
sub S acutecomb by Sacute;
|
||||||
|
sub s acutecomb by sacute;
|
||||||
|
sub S circumflexnosp by Scircumflex;
|
||||||
|
sub s circumflexnosp by scircumflex;
|
||||||
|
sub S cedillanosp by Scedilla;
|
||||||
|
sub s cedillanosp by scedilla;
|
||||||
|
sub S commaaccent by Scommaaccent;
|
||||||
|
sub s commaaccent by scommaaccent;
|
||||||
|
sub S caroncmb by Scaron;
|
||||||
|
sub s caroncmb by scaron;
|
||||||
|
sub T commaaccent by uni021A;
|
||||||
|
sub t commaaccent by tcommaaccent;
|
||||||
|
sub T cedillanosp by Tcommaaccent;
|
||||||
|
sub t cedillanosp by tcedilla;
|
||||||
|
sub T caroncmb by Tcaron;
|
||||||
|
sub U tildecomb by Utilde;
|
||||||
|
sub u tildecomb by utilde;
|
||||||
|
sub U macroncomb by Umacron;
|
||||||
|
sub u macroncomb by umacron;
|
||||||
|
sub U brevenosp by Ubreve;
|
||||||
|
sub u brevenosp by ubreve;
|
||||||
|
sub U ringnosp by Uring;
|
||||||
|
sub u ringnosp by uring;
|
||||||
|
sub U acutedblnosp by Uhungarumlaut;
|
||||||
|
sub u acutedblnosp by uhungarumlaut;
|
||||||
|
sub U ogoneknosp by Uogonek;
|
||||||
|
sub u ogoneknosp by uogonek;
|
||||||
|
sub W circumflexnosp by Wcircumflex;
|
||||||
|
sub w circumflexnosp by wcircumflex;
|
||||||
|
sub Y circumflexnosp by Ycircumflex;
|
||||||
|
sub y circumflexnosp by ycircumflex;
|
||||||
|
sub Y dieresisnosp by Ydieresis;
|
||||||
|
sub Z acutecomb by Zacute;
|
||||||
|
sub z acutecomb by zacute;
|
||||||
|
sub Z dotnosp by Zdotaccent;
|
||||||
|
sub z dotnosp by zdotaccent;
|
||||||
|
sub Z caroncmb by Zcaron;
|
||||||
|
sub z caroncmb by zcaron;
|
||||||
|
sub AE acutecomb by AEacute;
|
||||||
|
sub ae acutecomb by aeacute;
|
||||||
|
sub Oslash acutecomb by Oslashacute;
|
||||||
|
sub oslash acutecomb by oslashacute;
|
||||||
|
#sub z caroncmb by zcaron;
|
||||||
|
sub W gravecomb by Wgrave;
|
||||||
|
sub w gravecomb by wgrave;
|
||||||
|
sub W acutecomb by Wacute;
|
||||||
|
sub w acutecomb by wacute;
|
||||||
|
sub W dieresisnosp by Wdieresis;
|
||||||
|
sub w dieresisnosp by wdieresis;
|
||||||
|
sub Y gravecomb by Ygrave;
|
||||||
|
sub y gravecomb by ygrave;
|
||||||
|
sub jdotless caroncmb by jcaron;
|
||||||
|
sub A dotbelow by Adotbelow;
|
||||||
|
sub a dotbelow by adotbelow;
|
||||||
|
sub A hook by Ahookabove;
|
||||||
|
sub a hook by ahookabove;
|
||||||
|
#sub A circumflexacutecomb.cn by uni1EA4;
|
||||||
|
sub A circumflexnosp acutecomb by Acircumflexacute;
|
||||||
|
sub a circumflexacutecomb.cn by acircumflexacute;
|
||||||
|
#sub A circumflexgravecomb.cn by uni1EA6;
|
||||||
|
sub A circumflexnosp gravecomb by Acircumflexgrave;
|
||||||
|
sub a circumflexgravecomb.cn by acircumflexgrave;
|
||||||
|
#sub A circumflexhookcomb.cn by uni1EA8;
|
||||||
|
sub A circumflexnosp hook by Acircumflexhookabove;
|
||||||
|
sub a circumflexhookcomb.cn by acircumflexhookabove;
|
||||||
|
#sub A circumflextildecomb.cn by uni1EAA;
|
||||||
|
sub A circumflexnosp tildecomb by Acircumflextilde;
|
||||||
|
sub a circumflextildecomb.cn by acircumflextilde;
|
||||||
|
#sub A breveacutecomb.cn by uni1EAE;
|
||||||
|
sub A brevenosp acutecomb by Abreveacute;
|
||||||
|
sub a breveacutecomb.cn by abreveacute;
|
||||||
|
#sub A brevegravecomb.cn by uni1EB0;
|
||||||
|
sub A brevenosp gravecomb by Abrevegrave;
|
||||||
|
sub a brevegravecomb.cn by abrevegrave;
|
||||||
|
#sub A brevehookcomb.cn by uni1EB2;
|
||||||
|
sub A brevenosp hook by Abrevehookabove;
|
||||||
|
sub a brevehookcomb.cn by abrevehookabove;
|
||||||
|
sub A brevetildecomb.cn by Abrevetilde;
|
||||||
|
sub a brevetildecomb.cn by abrevetilde;
|
||||||
|
sub E dotbelow by Edotbelow;
|
||||||
|
sub e dotbelow by edotbelow;
|
||||||
|
sub E hook by Ehookabove;
|
||||||
|
sub e hook by ehookabove;
|
||||||
|
sub E tildecomb by Etilde;
|
||||||
|
sub e tildecomb by etilde;
|
||||||
|
#sub E circumflexacutecomb.cn by uni1EBE;
|
||||||
|
sub E circumflexnosp acutecomb by Ecircumflexacute;
|
||||||
|
sub e circumflexacutecomb.cn by ecircumflexacute;
|
||||||
|
#sub E circumflexgravecomb.cn by uni1EC0;
|
||||||
|
sub E circumflexnosp gravecomb by Ecircumflexgrave;
|
||||||
|
sub e circumflexgravecomb.cn by ecircumflexgrave;
|
||||||
|
#sub E circumflexhookcomb.cn by uni1EC2;
|
||||||
|
sub E circumflexnosp hook by Ecircumflexhookabove;
|
||||||
|
sub e circumflexhookcomb.cn by ecircumflexhookabove;
|
||||||
|
#sub E circumflextildecomb.cn by uni1EC4;
|
||||||
|
sub E circumflexnosp tildecomb by Ecircumflextilde;
|
||||||
|
sub e circumflextildecomb.cn by ecircumflextilde;
|
||||||
|
sub I hook by Ihookabove;
|
||||||
|
sub idotless hook by ihookabove;
|
||||||
|
sub I dotbelow by Idotbelow;
|
||||||
|
sub i dotbelow by idotbelow;
|
||||||
|
sub O dotbelow by Odotbelow;
|
||||||
|
sub o dotbelow by odotbelow;
|
||||||
|
sub O hook by Ohookabove;
|
||||||
|
sub o hook by ohookabove;
|
||||||
|
#sub O circumflexacutecomb.cn by uni1ED0;
|
||||||
|
sub O circumflexnosp acutecomb by Ocircumflexacute;
|
||||||
|
sub o circumflexacutecomb.cn by ocircumflexacute;
|
||||||
|
#sub O circumflexgravecomb.cn by uni1ED2;
|
||||||
|
sub O circumflexnosp gravecomb by Ocircumflexgrave;
|
||||||
|
sub o circumflexgravecomb.cn by ocircumflexgrave;
|
||||||
|
#sub O circumflexhookcomb.cn by uni1ED4;
|
||||||
|
sub O circumflexnosp hook by Ocircumflexhookabove;
|
||||||
|
sub o circumflexhookcomb.cn by ocircumflexhookabove;
|
||||||
|
#sub O circumflextildecomb.cn by uni1ED6;
|
||||||
|
sub O circumflexnosp tildecomb by Ocircumflextilde;
|
||||||
|
sub o circumflextildecomb.cn by ocircumflextilde;
|
||||||
|
sub Ohorn acutecomb by Ohornacute;
|
||||||
|
sub ohorn acutecomb by ohornacute;
|
||||||
|
sub Ohorn gravecomb by Ohorngrave;
|
||||||
|
sub ohorn gravecomb by ohorngrave;
|
||||||
|
sub Ohorn hook by Ohornhookabove;
|
||||||
|
sub ohorn hook by ohornhookabove;
|
||||||
|
sub Ohorn tildecomb by Ohorntilde;
|
||||||
|
sub ohorn tildecomb by ohorntilde;
|
||||||
|
sub Ohorn dotbelow by Ohorndotbelow;
|
||||||
|
sub ohorn dotbelow by ohorndotbelow;
|
||||||
|
sub U dotbelow by Udotbelow;
|
||||||
|
sub u dotbelow by udotbelow;
|
||||||
|
sub U hook by Uhookabove;
|
||||||
|
sub u hook by uhookabove;
|
||||||
|
sub Uhorn acutecomb by Uhornacute;
|
||||||
|
sub uhorn acutecomb by uhornacute;
|
||||||
|
sub Uhorn gravecomb by Uhorngrave;
|
||||||
|
sub uhorn gravecomb by uhorngrave;
|
||||||
|
sub Uhorn hook by Uhornhookabove;
|
||||||
|
sub uhorn hook by uhornhookabove;
|
||||||
|
sub Uhorn tildecomb by Uhorntilde;
|
||||||
|
sub uhorn tildecomb by uhorntilde;
|
||||||
|
sub Uhorn dotbelow by Uhorndotbelow;
|
||||||
|
sub uhorn dotbelow by uhorndotbelow;
|
||||||
|
sub Y dotbelow by Ydotbelow;
|
||||||
|
sub y dotbelow by ydotbelow;
|
||||||
|
sub Y hook by Yhookabove;
|
||||||
|
sub y hook by yhookabove;
|
||||||
|
sub Y tildecomb by Ytilde;
|
||||||
|
sub y tildecomb by ytilde;
|
||||||
|
sub A caroncmb by Acaron;
|
||||||
|
sub a caroncmb by acaron;
|
||||||
|
sub I caroncmb by Icaron;
|
||||||
|
sub idotless caroncmb by icaron;
|
||||||
|
sub O caroncmb by Ocaron;
|
||||||
|
sub o caroncmb by ocaron;
|
||||||
|
sub U caroncmb by Ucaron;
|
||||||
|
sub u caroncmb by ucaron;
|
||||||
|
#sub U dieresismacroncomb.cn by uni01D5;
|
||||||
|
sub U dieresisnosp macroncomb by Udieresismacron;
|
||||||
|
sub u dieresismacroncomb.cn by udieresismacron;
|
||||||
|
#sub U dieresisacutecomb.cn by uni01D7;
|
||||||
|
sub U dieresisnosp acutecomb by Udieresisacute;
|
||||||
|
sub u dieresisacutecomb.cn by udieresisacute;
|
||||||
|
#sub U dieresiscaroncomb.cn by uni01D9;
|
||||||
|
sub U dieresisnosp caroncmb by Udieresiscaron;
|
||||||
|
sub u dieresiscaroncomb.cn by udieresiscaron;
|
||||||
|
#sub U dieresisgravecomb.cn by uni01DB;
|
||||||
|
sub U dieresisnosp gravecomb by Udieresisgrave;
|
||||||
|
sub u dieresisgravecomb.cn by udieresisgrave;
|
||||||
|
#sub A dieresismacroncomb.cn by uni01DE;
|
||||||
|
sub A dieresisnosp macroncomb by Adieresismacron;
|
||||||
|
sub a dieresismacroncomb.cn by adieresismacron;
|
||||||
|
#sub A dotmacroncomb.cn by uni01E0;
|
||||||
|
sub A dotnosp macroncomb by Adotmacron;
|
||||||
|
sub a dotmacroncomb.cn by adotmacron;
|
||||||
|
sub AE macroncomb by AEmacron;
|
||||||
|
sub ae macroncomb by aemacron;
|
||||||
|
sub G caroncmb by Gcaron;
|
||||||
|
sub g caroncmb by gcaron;
|
||||||
|
sub K caroncmb by Kcaron;
|
||||||
|
sub k caroncmb by kcaron;
|
||||||
|
sub O ogoneknosp by Oogonek;
|
||||||
|
sub o ogoneknosp by oogonek;
|
||||||
|
sub G acutecomb by Gacute;
|
||||||
|
sub g acutecomb by gacute;
|
||||||
|
sub N gravecomb by uni01F8;
|
||||||
|
sub n gravecomb by uni01F9;
|
||||||
|
sub A dblgravecmb by Adblgrave;
|
||||||
|
sub a dblgravecmb by adblgrave;
|
||||||
|
sub A breveinvnosp by Ainvertedbreve;
|
||||||
|
sub a breveinvnosp by ainvertedbreve;
|
||||||
|
sub E dblgravecmb by Edblgrave;
|
||||||
|
sub e dblgravecmb by edblgrave;
|
||||||
|
sub E breveinvnosp by Einvertedbreve;
|
||||||
|
sub e breveinvnosp by einvertedbreve;
|
||||||
|
sub I dblgravecmb by Idblgrave;
|
||||||
|
sub idotless dblgravecmb by idblgrave;
|
||||||
|
sub I breveinvnosp by Iinvertedbreve;
|
||||||
|
sub idotless breveinvnosp by iinvertedbreve;
|
||||||
|
sub O dblgravecmb by Odblgrave;
|
||||||
|
sub o dblgravecmb by odblgrave;
|
||||||
|
sub O breveinvnosp by Oinvertedbreve;
|
||||||
|
sub o breveinvnosp by oinvertedbreve;
|
||||||
|
sub R dblgravecmb by Rdblgrave;
|
||||||
|
sub r dblgravecmb by rdblgrave;
|
||||||
|
sub R breveinvnosp by Rinvertedbreve;
|
||||||
|
sub r breveinvnosp by rinvertedbreve;
|
||||||
|
sub U dblgravecmb by Udblgrave;
|
||||||
|
sub u dblgravecmb by udblgrave;
|
||||||
|
sub U breveinvnosp by Uinvertedbreve;
|
||||||
|
sub u breveinvnosp by uinvertedbreve;
|
||||||
|
sub H caroncmb by uni021E;
|
||||||
|
sub h caroncmb by uni021F;
|
||||||
|
sub A dotnosp by uni0226;
|
||||||
|
sub a dotnosp by uni0227;
|
||||||
|
sub E cedillanosp by uni0228;
|
||||||
|
sub e cedillanosp by uni0229;
|
||||||
|
#sub O dieresismacroncomb.cn by uni022A;
|
||||||
|
sub O dieresisnosp macroncomb by uni022A;
|
||||||
|
sub o dieresismacroncomb.cn by uni022B;
|
||||||
|
#sub O tildemacroncomb.cn by uni022C;
|
||||||
|
sub O tildecomb macroncomb by uni022C;
|
||||||
|
sub o tildemacroncomb.cn by uni022D;
|
||||||
|
sub O dotnosp by uni022E;
|
||||||
|
sub o dotnosp by uni022F;
|
||||||
|
#sub O dotmacroncomb.cn by uni0230;
|
||||||
|
sub O dotnosp macroncomb by uni0230;
|
||||||
|
sub o dotmacroncomb.cn by uni0231;
|
||||||
|
sub Y macroncomb by uni0232;
|
||||||
|
sub y macroncomb by uni0233;
|
||||||
|
sub Upsilonhooksymbol acutecomb by Upsilonacutehooksymbolgreek;
|
||||||
|
sub Upsilonhooksymbol dieresisnosp by Upsilondieresishooksymbolgreek;
|
||||||
|
sub B dotnosp by Bdotaccent;
|
||||||
|
sub b dotnosp by bdotaccent;
|
||||||
|
sub B dotbelow by Bdotbelow;
|
||||||
|
sub b dotbelow by bdotbelow;
|
||||||
|
sub B macronsubnosp by Blinebelow;
|
||||||
|
sub b macronsubnosp by blinebelow;
|
||||||
|
sub D dotnosp by Ddotaccent;
|
||||||
|
sub d dotnosp by ddotaccent;
|
||||||
|
sub D dotbelow by Ddotbelow;
|
||||||
|
sub d dotbelow by ddotbelow;
|
||||||
|
sub D macronsubnosp by Dlinebelow;
|
||||||
|
sub d macronsubnosp by dlinebelow;
|
||||||
|
sub D commaaccent by Dcedilla;
|
||||||
|
sub d commaaccent by dcedilla;
|
||||||
|
sub D circumflexsubnosp by Dcircumflexbelow;
|
||||||
|
sub d circumflexsubnosp by dcircumflexbelow;
|
||||||
|
#sub E macrongravecomb.cn by uni1E14;
|
||||||
|
sub E macroncomb gravecomb by Emacrongrave;
|
||||||
|
sub e macrongravecomb.cn by emacrongrave;
|
||||||
|
#sub E macronacutecomb.cn by uni1E16;
|
||||||
|
sub E macroncomb acutecomb by Emacronacute;
|
||||||
|
sub e macronacutecomb.cn by emacronacute;
|
||||||
|
sub E circumflexsubnosp by Ecircumflexbelow;
|
||||||
|
sub e circumflexsubnosp by ecircumflexbelow;
|
||||||
|
sub E tildesubnosp by Etildebelow;
|
||||||
|
sub e tildesubnosp by etildebelow;
|
||||||
|
sub F dotnosp by Fdotaccent;
|
||||||
|
sub f dotnosp by fdotaccent;
|
||||||
|
sub G macroncomb by Gmacron;
|
||||||
|
sub g macroncomb by gmacron;
|
||||||
|
sub H dotnosp by Hdotaccent;
|
||||||
|
sub h dotnosp by hdotaccent;
|
||||||
|
sub H dotbelow by Hdotbelow;
|
||||||
|
sub h dotbelow by hdotbelow;
|
||||||
|
sub H dieresisnosp by Hdieresis;
|
||||||
|
sub h dieresisnosp by hdieresis;
|
||||||
|
sub H brevesubnosp by Hbrevebelow;
|
||||||
|
sub h brevesubnosp by hbrevebelow;
|
||||||
|
sub I tildesubnosp by Itildebelow;
|
||||||
|
sub i tildesubnosp by itildebelow;
|
||||||
|
#sub I dieresisacutecomb.cn by Idieresisacute;
|
||||||
|
sub I dieresisnosp acutecomb by Idieresisacute;
|
||||||
|
sub idotless dieresisacutecomb.cn by idieresisacute;
|
||||||
|
sub K acutecomb by Kacute;
|
||||||
|
sub k acutecomb by kacute;
|
||||||
|
sub K dotbelow by Kdotbelow;
|
||||||
|
sub k dotbelow by kdotbelow;
|
||||||
|
sub K macronsubnosp by Klinebelow;
|
||||||
|
sub k macronsubnosp by klinebelow;
|
||||||
|
sub L dotbelow by Ldotbelow;
|
||||||
|
sub l dotbelow by ldotbelow;
|
||||||
|
sub L macronsubnosp by Llinebelow;
|
||||||
|
sub l macronsubnosp by llinebelow;
|
||||||
|
sub L circumflexsubnosp by Lcircumflexbelow;
|
||||||
|
sub l circumflexsubnosp by lcircumflexbelow;
|
||||||
|
sub M acutecomb by Macute;
|
||||||
|
sub m acutecomb by macute;
|
||||||
|
sub M dotnosp by Mdotaccent;
|
||||||
|
sub m dotnosp by mdotaccent;
|
||||||
|
sub M dotbelow by Mdotbelow;
|
||||||
|
sub m dotbelow by mdotbelow;
|
||||||
|
sub N dotnosp by Ndotaccent;
|
||||||
|
sub n dotnosp by ndotaccent;
|
||||||
|
sub N dotbelow by Ndotbelow;
|
||||||
|
sub n dotbelow by ndotbelow;
|
||||||
|
sub N macronsubnosp by Nlinebelow;
|
||||||
|
sub n macronsubnosp by nlinebelow;
|
||||||
|
sub N circumflexsubnosp by Ncircumflexbelow;
|
||||||
|
sub n circumflexsubnosp by ncircumflexbelow;
|
||||||
|
#sub O tildeacutecomb.cn by uni1E4C;
|
||||||
|
sub O tildecomb acutecomb by Otildeacute;
|
||||||
|
sub o tildeacutecomb by otildeacute;
|
||||||
|
#sub O tildedieresiscomb.cn by uni1E4E;
|
||||||
|
sub O tildecomb dieresisnosp by Otildedieresis;
|
||||||
|
sub o tildedieresiscomb.cn by otildedieresis;
|
||||||
|
#sub O macrongravecomb.cn by uni1E50;
|
||||||
|
sub O macroncomb gravecomb by Omacrongrave;
|
||||||
|
sub o macrongravecomb.cn by omacrongrave;
|
||||||
|
#sub O macronacutecomb.cn by uni1E52;
|
||||||
|
sub O macroncomb acutecomb by Omacronacute;
|
||||||
|
sub o macronacutecomb.cn by omacronacute;
|
||||||
|
sub P acutecomb by Pacute;
|
||||||
|
sub p acutecomb by pacute;
|
||||||
|
sub P dotnosp by Pdotaccent;
|
||||||
|
sub p dotnosp by pdotaccent;
|
||||||
|
sub R dotnosp by Rdotaccent;
|
||||||
|
sub r dotnosp by rdotaccent;
|
||||||
|
sub R dotbelow by Rdotbelow;
|
||||||
|
sub r dotbelow by rdotbelow;
|
||||||
|
sub R macronsubnosp by Rlinebelow;
|
||||||
|
sub r macronsubnosp by rlinebelow;
|
||||||
|
sub S dotnosp by Sdotaccent;
|
||||||
|
sub s dotnosp by sdotaccent;
|
||||||
|
sub S dotbelow by Sdotbelow;
|
||||||
|
sub s dotbelow by sdotbelow;
|
||||||
|
#sub S acutedotcomb.cn by uni1E64;
|
||||||
|
sub S acutecomb dotnosp by Sacutedotaccent;
|
||||||
|
sub s acutedotcomb.cn by sacutedotaccent;
|
||||||
|
#sub S carondotcomb.cn by uni1E66;
|
||||||
|
sub S caroncmb dotnosp by Scarondotaccent;
|
||||||
|
sub s carondotcomb.cn by scarondotaccent;
|
||||||
|
sub T dotnosp by Tdotaccent;
|
||||||
|
sub t dotnosp by tdotaccent;
|
||||||
|
sub T dotbelow by Tdotbelow;
|
||||||
|
sub t dotbelow by tdotbelow;
|
||||||
|
sub T macronsubnosp by Tlinebelow;
|
||||||
|
sub t macronsubnosp by tlinebelow;
|
||||||
|
sub T circumflexsubnosp by Tcircumflexbelow;
|
||||||
|
sub t circumflexsubnosp by tcircumflexbelow;
|
||||||
|
sub U dotdblsubnosp by Udieresisbelow;
|
||||||
|
sub u dotdblsubnosp by udieresisbelow;
|
||||||
|
sub U tildesubnosp by Utildebelow;
|
||||||
|
sub u tildesubnosp by utildebelow;
|
||||||
|
sub U circumflexsubnosp by Ucircumflexbelow;
|
||||||
|
sub u circumflexsubnosp by ucircumflexbelow;
|
||||||
|
#sub U tildeacutecomb.cn by uni1E78;
|
||||||
|
sub U tildecomb acutecomb by Utildeacute;
|
||||||
|
sub u tildeacutecomb by utildeacute;
|
||||||
|
#sub U macrondieresiscomb.cn by uni1E7A;
|
||||||
|
sub U macroncomb dieresisnosp by Umacrondieresis;
|
||||||
|
sub u macrondieresiscomb.cn by umacrondieresis;
|
||||||
|
sub V tildecomb by Vtilde;
|
||||||
|
sub v tildecomb by vtilde;
|
||||||
|
sub V dotbelow by Vdotbelow;
|
||||||
|
sub v dotbelow by vdotbelow;
|
||||||
|
sub W dotnosp by Wdotaccent;
|
||||||
|
sub w dotnosp by wdotaccent;
|
||||||
|
sub W dotbelow by Wdotbelow;
|
||||||
|
sub w dotbelow by wdotbelow;
|
||||||
|
sub X dotnosp by Xdotaccent;
|
||||||
|
sub x dotnosp by xdotaccent;
|
||||||
|
sub X dieresisnosp by Xdieresis;
|
||||||
|
sub x dieresisnosp by xdieresis;
|
||||||
|
sub Y dotnosp by Ydotaccent;
|
||||||
|
sub y dotnosp by ydotaccent;
|
||||||
|
sub Z circumflexnosp by Zcircumflex;
|
||||||
|
sub z circumflexnosp by zcircumflex;
|
||||||
|
sub Z dotbelow by Zdotbelow;
|
||||||
|
sub z dotbelow by zdotbelow;
|
||||||
|
sub Z macronsubnosp by Zlinebelow;
|
||||||
|
sub z macronsubnosp by zlinebelow;
|
||||||
|
sub h macronsubnosp by hlinebelow;
|
||||||
|
sub t dieresisnosp by tdieresis;
|
||||||
|
sub w ringnosp by wring;
|
||||||
|
sub y ringnosp by yring;
|
||||||
|
sub longs dotnosp by slongdotaccent;
|
||||||
|
sub A ringsubnosp by Aringbelow;
|
||||||
|
sub a ringsubnosp by aringbelow;
|
||||||
|
} ccmp03;
|
||||||
1
src/features/cpsp.fea
Normal file
1
src/features/cpsp.fea
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
pos @Uppercase <16 0 32 0>;
|
||||||
5
src/features/cv01-one.fea
Normal file
5
src/features/cv01-one.fea
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
cvParameters { FeatUILabelNameID { name "Alternate one"; }; };
|
||||||
|
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;
|
||||||
5
src/features/cv02-four.fea
Normal file
5
src/features/cv02-four.fea
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
cvParameters { FeatUILabelNameID { name "Open four"; }; };
|
||||||
|
sub four by four.ss01;
|
||||||
|
sub four.tf by four.tf.ss01;
|
||||||
|
sub four.squared by four.ss01.squared;
|
||||||
|
sub four.circled by four.ss01.circled;
|
||||||
5
src/features/cv03-six.fea
Normal file
5
src/features/cv03-six.fea
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
cvParameters { FeatUILabelNameID { name "Open six"; }; };
|
||||||
|
sub six by six.ss01;
|
||||||
|
sub six.tf by six.tf.ss01;
|
||||||
|
sub six.squared by six.ss01.squared;
|
||||||
|
sub six.circled by six.ss01.circled;
|
||||||
5
src/features/cv04-nine.fea
Normal file
5
src/features/cv04-nine.fea
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
cvParameters { FeatUILabelNameID { name "Open nine"; }; };
|
||||||
|
sub nine by nine.ss01;
|
||||||
|
sub nine.tf by nine.tf.ss01;
|
||||||
|
sub nine.squared by nine.ss01.squared;
|
||||||
|
sub nine.circled by nine.ss01.circled;
|
||||||
14
src/features/cv05-l-tail.fea
Normal file
14
src/features/cv05-l-tail.fea
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
cvParameters { FeatUILabelNameID { name "Lower-case L with tail"; }; };
|
||||||
|
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;
|
||||||
|
sub lacute by lacute.ss02;
|
||||||
|
sub lcommaaccent by lcommaaccent.ss02;
|
||||||
|
sub lcaron by lcaron.ss02;
|
||||||
|
sub ldotbelow by ldotbelow.ss02;
|
||||||
|
sub ldotbelowmacron by ldotbelowmacron.ss02;
|
||||||
|
sub llinebelow by llinebelow.ss02;
|
||||||
|
sub lcircumflexbelow by lcircumflexbelow.ss02;
|
||||||
14
src/features/cv06-r.fea
Normal file
14
src/features/cv06-r.fea
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
cvParameters { FeatUILabelNameID { name "Lower case R with curved tail"; }; };
|
||||||
|
sub r by r.1;
|
||||||
|
sub rrthook by rrthook.1;
|
||||||
|
sub uni024D by uni024D.1;
|
||||||
|
sub rdescend by rdescend.1;
|
||||||
|
sub racute by racute.1;
|
||||||
|
sub rcommaaccent by rcommaaccent.1;
|
||||||
|
sub rcaron by rcaron.1;
|
||||||
|
sub rdblgrave by rdblgrave.1;
|
||||||
|
sub rinvertedbreve by rinvertedbreve.1;
|
||||||
|
sub rdotaccent by rdotaccent.1;
|
||||||
|
sub rdotbelow by rdotbelow.1;
|
||||||
|
sub rdotbelowmacron by rdotbelowmacron.1;
|
||||||
|
sub rlinebelow by rlinebelow.1;
|
||||||
2
src/features/cv07-germandbls.fea
Normal file
2
src/features/cv07-germandbls.fea
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
cvParameters { FeatUILabelNameID { name "Alternate German double s"; }; };
|
||||||
|
sub germandbls by germandbls.1;
|
||||||
33
src/features/cv08-i-serif.fea
Normal file
33
src/features/cv08-i-serif.fea
Normal file
|
|
@ -0,0 +1,33 @@
|
||||||
|
cvParameters { FeatUILabelNameID { name "Upper case i with serif"; }; };
|
||||||
|
sub I by I.1;
|
||||||
|
sub Idieresis by Idieresis.1;
|
||||||
|
sub Idieresisacute by Idieresisacute.1;
|
||||||
|
sub Istroke by Istroke.1;
|
||||||
|
sub Itildebelow by Itildebelow.1;
|
||||||
|
sub Igrave by Igrave.1;
|
||||||
|
sub Iacute by Iacute.1;
|
||||||
|
sub Icircumflex by Icircumflex.1;
|
||||||
|
sub Itilde by Itilde.1;
|
||||||
|
sub Imacron by Imacron.1;
|
||||||
|
sub Ibreve by Ibreve.1;
|
||||||
|
sub Iogonek by Iogonek.1;
|
||||||
|
sub Idotaccent by Idotaccent.1;
|
||||||
|
sub Icaron by Icaron.1;
|
||||||
|
sub Idblgrave by Idblgrave.1;
|
||||||
|
sub Iinvertedbreve by Iinvertedbreve.1;
|
||||||
|
sub Ihookabove by Ihookabove.1;
|
||||||
|
sub Idotbelow by Idotbelow.1;
|
||||||
|
sub uni1F38 by uni1F38.1;
|
||||||
|
sub uni1F39 by uni1F39.1;
|
||||||
|
sub uni1F3A by uni1F3A.1;
|
||||||
|
sub uni1F3B by uni1F3B.1;
|
||||||
|
sub uni1F3C by uni1F3C.1;
|
||||||
|
sub uni1F3D by uni1F3D.1;
|
||||||
|
sub uni1F3E by uni1F3E.1;
|
||||||
|
sub uni1F3F by uni1F3F.1;
|
||||||
|
sub uni1FD8 by uni1FD8.1;
|
||||||
|
sub uni1FD9 by uni1FD9.1;
|
||||||
|
sub uni1FDA by uni1FDA.1;
|
||||||
|
sub uni1FDB by uni1FDB.1;
|
||||||
|
sub afii10055 by afii10055.1;
|
||||||
|
sub afii10056 by afii10056.1;
|
||||||
5
src/features/cv09-three.fea
Normal file
5
src/features/cv09-three.fea
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
cvParameters { FeatUILabelNameID { name "Flat top three"; }; };
|
||||||
|
sub three by three.1;
|
||||||
|
sub three.tf by three.1.tf;
|
||||||
|
sub three.squared by three.1.squared;
|
||||||
|
sub three.circled by three.1.circled;
|
||||||
11
src/features/cv10-g-spur.fea
Normal file
11
src/features/cv10-g-spur.fea
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
cvParameters { FeatUILabelNameID { name "Captital G with spur"; }; };
|
||||||
|
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;
|
||||||
|
sub Gcommaaccent by Gcommaaccent.1;
|
||||||
|
sub Gcaron by Gcaron.1;
|
||||||
|
sub Gacute by Gacute.1;
|
||||||
|
sub Gmacron by Gmacron.1;
|
||||||
33
src/features/cv11-single-storey-a.fea
Normal file
33
src/features/cv11-single-storey-a.fea
Normal file
|
|
@ -0,0 +1,33 @@
|
||||||
|
cvParameters { FeatUILabelNameID { name "Single storey a"; }; };
|
||||||
|
sub a by a.1;
|
||||||
|
sub aacute by aacute.1;
|
||||||
|
sub abreve by abreve.1;
|
||||||
|
sub abreveacute by abreveacute.1;
|
||||||
|
sub abrevedotbelow by abrevedotbelow.1;
|
||||||
|
sub abrevegrave by abrevegrave.1;
|
||||||
|
sub abrevehookabove by abrevehookabove.1;
|
||||||
|
sub abrevetilde by abrevetilde.1;
|
||||||
|
sub acaron by acaron.1;
|
||||||
|
sub acircumflex by acircumflex.1;
|
||||||
|
sub acircumflexacute by acircumflexacute.1;
|
||||||
|
sub acircumflexdotbelow by acircumflexdotbelow.1;
|
||||||
|
sub acircumflexgrave by acircumflexgrave.1;
|
||||||
|
sub acircumflexhookabove by acircumflexhookabove.1;
|
||||||
|
sub acircumflextilde by acircumflextilde.1;
|
||||||
|
sub adblgrave by adblgrave.1;
|
||||||
|
sub adieresis by adieresis.1;
|
||||||
|
sub adieresismacron by adieresismacron.1;
|
||||||
|
sub uni0227 by uni0227.1;
|
||||||
|
sub adotbelow by adotbelow.1;
|
||||||
|
sub adotmacron by adotmacron.1;
|
||||||
|
sub agrave by agrave.1;
|
||||||
|
sub ahookabove by ahookabove.1;
|
||||||
|
sub ainvertedbreve by ainvertedbreve.1;
|
||||||
|
sub amacron by amacron.1;
|
||||||
|
sub aogonek by aogonek.1;
|
||||||
|
sub arighthalfring by arighthalfring.1;
|
||||||
|
sub aring by aring.1;
|
||||||
|
sub aringacute by aringacute.1;
|
||||||
|
sub aringbelow by aringbelow.1;
|
||||||
|
sub atilde by atilde.1;
|
||||||
|
sub acyrillic by a.1; # acyrillic is just a reference to /a
|
||||||
4
src/features/dlig.fea
Normal file
4
src/features/dlig.fea
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
sub exclam question by interrobang;
|
||||||
|
sub question exclam by interrobang;
|
||||||
|
sub exclamdown questiondown by invertedinterrobang;
|
||||||
|
sub questiondown exclamdown by invertedinterrobang;
|
||||||
198
src/features/frac.fea
Normal file
198
src/features/frac.fea
Normal file
|
|
@ -0,0 +1,198 @@
|
||||||
|
@figures = [
|
||||||
|
zero
|
||||||
|
one
|
||||||
|
two
|
||||||
|
three
|
||||||
|
four
|
||||||
|
five
|
||||||
|
six
|
||||||
|
seven
|
||||||
|
eight
|
||||||
|
nine
|
||||||
|
];
|
||||||
|
@numerators = [
|
||||||
|
zero.frac
|
||||||
|
one.frac
|
||||||
|
two.frac
|
||||||
|
three.frac
|
||||||
|
four.frac
|
||||||
|
five.frac
|
||||||
|
six.frac
|
||||||
|
seven.frac
|
||||||
|
eight.frac
|
||||||
|
nine.frac
|
||||||
|
];
|
||||||
|
@numerators2 = [
|
||||||
|
zero.numr
|
||||||
|
one.numr
|
||||||
|
two.numr
|
||||||
|
three.numr
|
||||||
|
four.numr
|
||||||
|
five.numr
|
||||||
|
six.numr
|
||||||
|
seven.numr
|
||||||
|
eight.numr
|
||||||
|
nine.numr
|
||||||
|
];
|
||||||
|
@denominators = [
|
||||||
|
zero.dnomf
|
||||||
|
one.dnomf
|
||||||
|
two.dnomf
|
||||||
|
three.dnomf
|
||||||
|
four.dnomf
|
||||||
|
five.dnomf
|
||||||
|
six.dnomf
|
||||||
|
seven.dnomf
|
||||||
|
eight.dnomf
|
||||||
|
nine.dnomf
|
||||||
|
];
|
||||||
|
@denominators2 = [
|
||||||
|
zero.dnom
|
||||||
|
one.dnom
|
||||||
|
two.dnom
|
||||||
|
three.dnom
|
||||||
|
four.dnom
|
||||||
|
five.dnom
|
||||||
|
six.dnom
|
||||||
|
seven.dnom
|
||||||
|
eight.dnom
|
||||||
|
nine.dnom
|
||||||
|
];
|
||||||
|
@subscripts = [
|
||||||
|
zero.subs
|
||||||
|
one.subs
|
||||||
|
two.subs
|
||||||
|
three.subs
|
||||||
|
four.subs
|
||||||
|
five.subs
|
||||||
|
six.subs
|
||||||
|
seven.subs
|
||||||
|
eight.subs
|
||||||
|
nine.subs
|
||||||
|
];
|
||||||
|
|
||||||
|
lookup FractionBar {
|
||||||
|
ignore sub slash @figures @figures @figures @figures @figures @figures @figures @figures @figures @figures slash';
|
||||||
|
ignore sub slash' @figures @figures @figures @figures @figures @figures @figures @figures @figures @figures slash;
|
||||||
|
ignore sub slash @figures @figures @figures @figures @figures @figures @figures @figures @figures slash';
|
||||||
|
ignore sub slash' @figures @figures @figures @figures @figures @figures @figures @figures @figures slash;
|
||||||
|
ignore sub slash @figures @figures @figures @figures @figures @figures @figures @figures slash';
|
||||||
|
ignore sub slash' @figures @figures @figures @figures @figures @figures @figures @figures slash;
|
||||||
|
ignore sub slash @figures @figures @figures @figures @figures @figures @figures slash';
|
||||||
|
ignore sub slash' @figures @figures @figures @figures @figures @figures @figures slash;
|
||||||
|
ignore sub slash @figures @figures @figures @figures @figures @figures slash';
|
||||||
|
ignore sub slash' @figures @figures @figures @figures @figures @figures slash;
|
||||||
|
ignore sub slash @figures @figures @figures @figures @figures slash';
|
||||||
|
ignore sub slash' @figures @figures @figures @figures @figures slash;
|
||||||
|
ignore sub slash @figures @figures @figures @figures slash';
|
||||||
|
ignore sub slash' @figures @figures @figures @figures slash;
|
||||||
|
ignore sub slash @figures @figures @figures slash';
|
||||||
|
ignore sub slash' @figures @figures @figures slash;
|
||||||
|
ignore sub slash @figures @figures slash';
|
||||||
|
ignore sub slash' @figures @figures slash;
|
||||||
|
ignore sub slash @figures slash';
|
||||||
|
ignore sub slash' @figures slash;
|
||||||
|
sub @figures slash' @figures by fraction;
|
||||||
|
} FractionBar;
|
||||||
|
|
||||||
|
lookup Numerator1 {
|
||||||
|
sub @figures'
|
||||||
|
fraction by @numerators;
|
||||||
|
} Numerator1;
|
||||||
|
|
||||||
|
lookup Numerator2 {
|
||||||
|
sub @figures'
|
||||||
|
[@numerators @numerators2]
|
||||||
|
fraction by @numerators;
|
||||||
|
} Numerator2;
|
||||||
|
|
||||||
|
lookup Numerator3 {
|
||||||
|
sub @figures'
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
fraction by @numerators;
|
||||||
|
} Numerator3;
|
||||||
|
|
||||||
|
lookup Numerator4 {
|
||||||
|
sub @figures'
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
fraction by @numerators;
|
||||||
|
} Numerator4;
|
||||||
|
|
||||||
|
lookup Numerator5 {
|
||||||
|
sub @figures'
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
fraction by @numerators;
|
||||||
|
} Numerator5;
|
||||||
|
|
||||||
|
lookup Numerator6 {
|
||||||
|
sub @figures'
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
fraction by @numerators;
|
||||||
|
} Numerator6;
|
||||||
|
|
||||||
|
lookup Numerator7 {
|
||||||
|
sub @figures'
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
fraction by @numerators;
|
||||||
|
} Numerator7;
|
||||||
|
|
||||||
|
lookup Numerator8 {
|
||||||
|
sub @figures'
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
fraction by @numerators;
|
||||||
|
} Numerator8;
|
||||||
|
|
||||||
|
lookup Numerator9 {
|
||||||
|
sub @figures'
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
fraction by @numerators;
|
||||||
|
} Numerator9;
|
||||||
|
|
||||||
|
lookup Numerator10 {
|
||||||
|
sub @figures'
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
[@numerators @numerators2]
|
||||||
|
fraction by @numerators;
|
||||||
|
} Numerator10;
|
||||||
|
|
||||||
|
lookup Denominator {
|
||||||
|
sub [fraction @denominators @denominators2 onefraction] @figures' by @denominators;
|
||||||
|
sub [fraction @denominators @denominators2 onefraction] @subscripts' by @denominators;
|
||||||
|
} Denominator;
|
||||||
|
|
||||||
|
sub @figures space' [@numerators @numerators2] by thinspace;
|
||||||
282
src/features/liga.fea
Normal file
282
src/features/liga.fea
Normal file
|
|
@ -0,0 +1,282 @@
|
||||||
|
@DASH = [
|
||||||
|
hyphen
|
||||||
|
endash
|
||||||
|
emdash
|
||||||
|
];
|
||||||
|
@DASH_CASE = [
|
||||||
|
hyphen.case
|
||||||
|
endash.case
|
||||||
|
emdash.case
|
||||||
|
];
|
||||||
|
|
||||||
|
# ->
|
||||||
|
sub hyphen greater by rightArrow;
|
||||||
|
sub [endash emdash] greater by rightLongArrow; # legacy
|
||||||
|
sub @DASH @DASH greater by rightLongArrow;
|
||||||
|
sub @DASH @DASH @DASH greater by rightLongArrow2;
|
||||||
|
# <-
|
||||||
|
sub less @DASH @DASH by leftLongArrow;
|
||||||
|
sub less @DASH @DASH @DASH by leftLongArrow2;
|
||||||
|
ignore sub less' hyphen' @Numeral; # ignore e.g. "<-3" ("less than negative")
|
||||||
|
sub less' hyphen' by leftArrow;
|
||||||
|
sub less [endash emdash] by leftLongArrow; # legacy
|
||||||
|
# <->
|
||||||
|
sub less rightArrow by leftRightArrow; # <,->
|
||||||
|
sub leftArrow greater by leftRightArrow; # <-,-
|
||||||
|
sub less rightLongArrow by leftRightLongArrow; # <,-->
|
||||||
|
sub leftLongArrow greater by leftRightLongArrow; # <--,>
|
||||||
|
|
||||||
|
# x surrounded by numbers, e.g. 3x4 -> 3×4
|
||||||
|
sub @Numeral x' @Numeral by multiply; # 3x9
|
||||||
|
sub @Numeral @Whitespace x' @Numeral by multiply; # 3 x9
|
||||||
|
sub @Numeral @Whitespace @Whitespace x' @Numeral by multiply; # 3 x9
|
||||||
|
sub @Numeral x' @Whitespace @Numeral by multiply; # 3x 9
|
||||||
|
sub @Numeral @Whitespace x' @Whitespace @Numeral by multiply; # 3 x 9
|
||||||
|
sub @Numeral @Whitespace @Whitespace x' @Whitespace @Numeral by multiply; # 3 x 9
|
||||||
|
sub @Numeral x' @Whitespace @Whitespace @Numeral by multiply; # 3x 9
|
||||||
|
sub @Numeral @Whitespace x' @Whitespace @Whitespace @Numeral by multiply; # 3 x 9
|
||||||
|
sub @Numeral @Whitespace @Whitespace x' @Whitespace @Whitespace @Numeral by multiply; # 3 x 9
|
||||||
|
|
||||||
|
# * enclosingsquarecomb -> composite
|
||||||
|
sub A enclosingsquarecomb by A.squared;
|
||||||
|
sub B enclosingsquarecomb by B.squared;
|
||||||
|
sub C enclosingsquarecomb by C.squared;
|
||||||
|
sub D enclosingsquarecomb by D.squared;
|
||||||
|
sub E enclosingsquarecomb by E.squared;
|
||||||
|
sub F enclosingsquarecomb by F.squared;
|
||||||
|
sub G enclosingsquarecomb by G.squared;
|
||||||
|
sub H enclosingsquarecomb by H.squared;
|
||||||
|
sub I enclosingsquarecomb by I.squared;
|
||||||
|
sub J enclosingsquarecomb by J.squared;
|
||||||
|
sub K enclosingsquarecomb by K.squared;
|
||||||
|
sub L enclosingsquarecomb by L.squared;
|
||||||
|
sub M enclosingsquarecomb by M.squared;
|
||||||
|
sub N enclosingsquarecomb by N.squared;
|
||||||
|
sub O enclosingsquarecomb by O.squared;
|
||||||
|
sub P enclosingsquarecomb by P.squared;
|
||||||
|
sub Q enclosingsquarecomb by Q.squared;
|
||||||
|
sub R enclosingsquarecomb by R.squared;
|
||||||
|
sub S enclosingsquarecomb by S.squared;
|
||||||
|
sub T enclosingsquarecomb by T.squared;
|
||||||
|
sub U enclosingsquarecomb by U.squared;
|
||||||
|
sub V enclosingsquarecomb by V.squared;
|
||||||
|
sub W enclosingsquarecomb by W.squared;
|
||||||
|
sub X enclosingsquarecomb by X.squared;
|
||||||
|
sub Y enclosingsquarecomb by Y.squared;
|
||||||
|
sub Z enclosingsquarecomb by Z.squared;
|
||||||
|
sub zero enclosingsquarecomb by zero.squared;
|
||||||
|
sub one enclosingsquarecomb by one.squared;
|
||||||
|
sub two enclosingsquarecomb by two.squared;
|
||||||
|
sub three enclosingsquarecomb by three.squared;
|
||||||
|
sub four enclosingsquarecomb by four.squared;
|
||||||
|
sub five enclosingsquarecomb by five.squared;
|
||||||
|
sub six enclosingsquarecomb by six.squared;
|
||||||
|
sub seven enclosingsquarecomb by seven.squared;
|
||||||
|
sub eight enclosingsquarecomb by eight.squared;
|
||||||
|
sub nine enclosingsquarecomb by nine.squared;
|
||||||
|
sub zero.slash enclosingsquarecomb by zero.slash.squared;
|
||||||
|
sub one.ss01 enclosingsquarecomb by one.ss01.squared;
|
||||||
|
sub three.1 enclosingsquarecomb by three.1.squared;
|
||||||
|
sub four.ss01 enclosingsquarecomb by four.ss01.squared;
|
||||||
|
sub six.ss01 enclosingsquarecomb by six.ss01.squared;
|
||||||
|
sub nine.ss01 enclosingsquarecomb by nine.ss01.squared;
|
||||||
|
sub exclam enclosingsquarecomb by exclam.squared;
|
||||||
|
sub question enclosingsquarecomb by question.squared;
|
||||||
|
sub numbersign enclosingsquarecomb by numbersign.squared;
|
||||||
|
sub hyphen enclosingsquarecomb by hyphen.squared;
|
||||||
|
sub less enclosingsquarecomb by less.squared;
|
||||||
|
sub greater enclosingsquarecomb by greater.squared;
|
||||||
|
sub equal enclosingsquarecomb by equal.squared;
|
||||||
|
sub plus enclosingsquarecomb by plus.squared;
|
||||||
|
sub minus enclosingsquarecomb by minus.squared;
|
||||||
|
sub multiply enclosingsquarecomb by multiply.squared;
|
||||||
|
sub divide enclosingsquarecomb by divide.squared;
|
||||||
|
sub upArrow enclosingsquarecomb by upArrow.squared;
|
||||||
|
sub downArrow enclosingsquarecomb by downArrow.squared;
|
||||||
|
sub leftArrow enclosingsquarecomb by leftArrow.squared;
|
||||||
|
sub rightArrow enclosingsquarecomb by rightArrow.squared;
|
||||||
|
sub dngb_check enclosingsquarecomb by dngb_check.squared;
|
||||||
|
sub dngb_ballotx enclosingsquarecomb by dngb_ballotx.squared;
|
||||||
|
|
||||||
|
# enclosingsquarecomb * -> composite
|
||||||
|
sub enclosingsquarecomb A by A.squared;
|
||||||
|
sub enclosingsquarecomb B by B.squared;
|
||||||
|
sub enclosingsquarecomb C by C.squared;
|
||||||
|
sub enclosingsquarecomb D by D.squared;
|
||||||
|
sub enclosingsquarecomb E by E.squared;
|
||||||
|
sub enclosingsquarecomb F by F.squared;
|
||||||
|
sub enclosingsquarecomb G by G.squared;
|
||||||
|
sub enclosingsquarecomb H by H.squared;
|
||||||
|
sub enclosingsquarecomb I by I.squared;
|
||||||
|
sub enclosingsquarecomb J by J.squared;
|
||||||
|
sub enclosingsquarecomb K by K.squared;
|
||||||
|
sub enclosingsquarecomb L by L.squared;
|
||||||
|
sub enclosingsquarecomb M by M.squared;
|
||||||
|
sub enclosingsquarecomb N by N.squared;
|
||||||
|
sub enclosingsquarecomb O by O.squared;
|
||||||
|
sub enclosingsquarecomb P by P.squared;
|
||||||
|
sub enclosingsquarecomb Q by Q.squared;
|
||||||
|
sub enclosingsquarecomb R by R.squared;
|
||||||
|
sub enclosingsquarecomb S by S.squared;
|
||||||
|
sub enclosingsquarecomb T by T.squared;
|
||||||
|
sub enclosingsquarecomb U by U.squared;
|
||||||
|
sub enclosingsquarecomb V by V.squared;
|
||||||
|
sub enclosingsquarecomb W by W.squared;
|
||||||
|
sub enclosingsquarecomb X by X.squared;
|
||||||
|
sub enclosingsquarecomb Y by Y.squared;
|
||||||
|
sub enclosingsquarecomb Z by Z.squared;
|
||||||
|
sub enclosingsquarecomb zero by zero.squared;
|
||||||
|
sub enclosingsquarecomb one by one.squared;
|
||||||
|
sub enclosingsquarecomb two by two.squared;
|
||||||
|
sub enclosingsquarecomb three by three.squared;
|
||||||
|
sub enclosingsquarecomb four by four.squared;
|
||||||
|
sub enclosingsquarecomb five by five.squared;
|
||||||
|
sub enclosingsquarecomb six by six.squared;
|
||||||
|
sub enclosingsquarecomb seven by seven.squared;
|
||||||
|
sub enclosingsquarecomb eight by eight.squared;
|
||||||
|
sub enclosingsquarecomb nine by nine.squared;
|
||||||
|
sub enclosingsquarecomb zero.slash by zero.slash.squared;
|
||||||
|
sub enclosingsquarecomb one.ss01 by one.ss01.squared;
|
||||||
|
sub enclosingsquarecomb three.1 by three.1.squared;
|
||||||
|
sub enclosingsquarecomb four.ss01 by four.ss01.squared;
|
||||||
|
sub enclosingsquarecomb six.ss01 by six.ss01.squared;
|
||||||
|
sub enclosingsquarecomb nine.ss01 by nine.ss01.squared;
|
||||||
|
sub enclosingsquarecomb exclam by exclam.squared;
|
||||||
|
sub enclosingsquarecomb question by question.squared;
|
||||||
|
sub enclosingsquarecomb numbersign by numbersign.squared;
|
||||||
|
sub enclosingsquarecomb hyphen by hyphen.squared;
|
||||||
|
sub enclosingsquarecomb less by less.squared;
|
||||||
|
sub enclosingsquarecomb greater by greater.squared;
|
||||||
|
sub enclosingsquarecomb equal by equal.squared;
|
||||||
|
sub enclosingsquarecomb plus by plus.squared;
|
||||||
|
sub enclosingsquarecomb minus by minus.squared;
|
||||||
|
sub enclosingsquarecomb multiply by multiply.squared;
|
||||||
|
sub enclosingsquarecomb divide by divide.squared;
|
||||||
|
sub enclosingsquarecomb upArrow by upArrow.squared;
|
||||||
|
sub enclosingsquarecomb downArrow by downArrow.squared;
|
||||||
|
sub enclosingsquarecomb leftArrow by leftArrow.squared;
|
||||||
|
sub enclosingsquarecomb rightArrow by rightArrow.squared;
|
||||||
|
sub enclosingsquarecomb dngb_check by dngb_check.squared;
|
||||||
|
sub enclosingsquarecomb dngb_ballotx by dngb_ballotx.squared;
|
||||||
|
|
||||||
|
# * enclosingcirclecomb -> composite
|
||||||
|
sub A enclosingcirclecomb by A.circled;
|
||||||
|
sub B enclosingcirclecomb by B.circled;
|
||||||
|
sub C enclosingcirclecomb by C.circled;
|
||||||
|
sub D enclosingcirclecomb by D.circled;
|
||||||
|
sub E enclosingcirclecomb by E.circled;
|
||||||
|
sub F enclosingcirclecomb by F.circled;
|
||||||
|
sub G enclosingcirclecomb by G.circled;
|
||||||
|
sub H enclosingcirclecomb by H.circled;
|
||||||
|
sub I enclosingcirclecomb by I.circled;
|
||||||
|
sub J enclosingcirclecomb by J.circled;
|
||||||
|
sub K enclosingcirclecomb by K.circled;
|
||||||
|
sub L enclosingcirclecomb by L.circled;
|
||||||
|
sub M enclosingcirclecomb by M.circled;
|
||||||
|
sub N enclosingcirclecomb by N.circled;
|
||||||
|
sub O enclosingcirclecomb by O.circled;
|
||||||
|
sub P enclosingcirclecomb by P.circled;
|
||||||
|
sub Q enclosingcirclecomb by Q.circled;
|
||||||
|
sub R enclosingcirclecomb by R.circled;
|
||||||
|
sub S enclosingcirclecomb by S.circled;
|
||||||
|
sub T enclosingcirclecomb by T.circled;
|
||||||
|
sub U enclosingcirclecomb by U.circled;
|
||||||
|
sub V enclosingcirclecomb by V.circled;
|
||||||
|
sub W enclosingcirclecomb by W.circled;
|
||||||
|
sub X enclosingcirclecomb by X.circled;
|
||||||
|
sub Y enclosingcirclecomb by Y.circled;
|
||||||
|
sub Z enclosingcirclecomb by Z.circled;
|
||||||
|
sub zero enclosingcirclecomb by zero.circled;
|
||||||
|
sub one enclosingcirclecomb by one.circled;
|
||||||
|
sub two enclosingcirclecomb by two.circled;
|
||||||
|
sub three enclosingcirclecomb by three.circled;
|
||||||
|
sub four enclosingcirclecomb by four.circled;
|
||||||
|
sub five enclosingcirclecomb by five.circled;
|
||||||
|
sub six enclosingcirclecomb by six.circled;
|
||||||
|
sub seven enclosingcirclecomb by seven.circled;
|
||||||
|
sub eight enclosingcirclecomb by eight.circled;
|
||||||
|
sub nine enclosingcirclecomb by nine.circled;
|
||||||
|
sub zero.slash enclosingcirclecomb by zero.slash.circled;
|
||||||
|
sub one.ss01 enclosingcirclecomb by one.ss01.circled;
|
||||||
|
sub three.1 enclosingcirclecomb by three.1.circled;
|
||||||
|
sub four.ss01 enclosingcirclecomb by four.ss01.circled;
|
||||||
|
sub six.ss01 enclosingcirclecomb by six.ss01.circled;
|
||||||
|
sub nine.ss01 enclosingcirclecomb by nine.ss01.circled;
|
||||||
|
sub exclam enclosingcirclecomb by exclam.circled;
|
||||||
|
sub question enclosingcirclecomb by question.circled;
|
||||||
|
sub numbersign enclosingcirclecomb by numbersign.circled;
|
||||||
|
sub hyphen enclosingcirclecomb by hyphen.circled;
|
||||||
|
sub less enclosingcirclecomb by less.circled;
|
||||||
|
sub greater enclosingcirclecomb by greater.circled;
|
||||||
|
sub equal enclosingcirclecomb by equal.circled;
|
||||||
|
sub plus enclosingcirclecomb by plus.circled;
|
||||||
|
sub minus enclosingcirclecomb by minus.circled;
|
||||||
|
sub multiply enclosingcirclecomb by multiply.circled;
|
||||||
|
sub divide enclosingcirclecomb by divide.circled;
|
||||||
|
sub upArrow enclosingcirclecomb by upArrow.circled;
|
||||||
|
sub downArrow enclosingcirclecomb by downArrow.circled;
|
||||||
|
sub leftArrow enclosingcirclecomb by leftArrow.circled;
|
||||||
|
sub rightArrow enclosingcirclecomb by rightArrow.circled;
|
||||||
|
sub dngb_check enclosingcirclecomb by dngb_check.circled;
|
||||||
|
sub dngb_ballotx enclosingcirclecomb by dngb_ballotx.circled;
|
||||||
|
|
||||||
|
# enclosingcirclecomb * -> composite
|
||||||
|
sub enclosingcirclecomb A by A.circled;
|
||||||
|
sub enclosingcirclecomb B by B.circled;
|
||||||
|
sub enclosingcirclecomb C by C.circled;
|
||||||
|
sub enclosingcirclecomb D by D.circled;
|
||||||
|
sub enclosingcirclecomb E by E.circled;
|
||||||
|
sub enclosingcirclecomb F by F.circled;
|
||||||
|
sub enclosingcirclecomb G by G.circled;
|
||||||
|
sub enclosingcirclecomb H by H.circled;
|
||||||
|
sub enclosingcirclecomb I by I.circled;
|
||||||
|
sub enclosingcirclecomb J by J.circled;
|
||||||
|
sub enclosingcirclecomb K by K.circled;
|
||||||
|
sub enclosingcirclecomb L by L.circled;
|
||||||
|
sub enclosingcirclecomb M by M.circled;
|
||||||
|
sub enclosingcirclecomb N by N.circled;
|
||||||
|
sub enclosingcirclecomb O by O.circled;
|
||||||
|
sub enclosingcirclecomb P by P.circled;
|
||||||
|
sub enclosingcirclecomb Q by Q.circled;
|
||||||
|
sub enclosingcirclecomb R by R.circled;
|
||||||
|
sub enclosingcirclecomb S by S.circled;
|
||||||
|
sub enclosingcirclecomb T by T.circled;
|
||||||
|
sub enclosingcirclecomb U by U.circled;
|
||||||
|
sub enclosingcirclecomb V by V.circled;
|
||||||
|
sub enclosingcirclecomb W by W.circled;
|
||||||
|
sub enclosingcirclecomb X by X.circled;
|
||||||
|
sub enclosingcirclecomb Y by Y.circled;
|
||||||
|
sub enclosingcirclecomb Z by Z.circled;
|
||||||
|
sub enclosingcirclecomb zero by zero.circled;
|
||||||
|
sub enclosingcirclecomb one by one.circled;
|
||||||
|
sub enclosingcirclecomb two by two.circled;
|
||||||
|
sub enclosingcirclecomb three by three.circled;
|
||||||
|
sub enclosingcirclecomb four by four.circled;
|
||||||
|
sub enclosingcirclecomb five by five.circled;
|
||||||
|
sub enclosingcirclecomb six by six.circled;
|
||||||
|
sub enclosingcirclecomb seven by seven.circled;
|
||||||
|
sub enclosingcirclecomb eight by eight.circled;
|
||||||
|
sub enclosingcirclecomb nine by nine.circled;
|
||||||
|
sub enclosingcirclecomb zero.slash by zero.slash.circled;
|
||||||
|
sub enclosingcirclecomb one.ss01 by one.ss01.circled;
|
||||||
|
sub enclosingcirclecomb three.1 by three.1.circled;
|
||||||
|
sub enclosingcirclecomb four.ss01 by four.ss01.circled;
|
||||||
|
sub enclosingcirclecomb six.ss01 by six.ss01.circled;
|
||||||
|
sub enclosingcirclecomb nine.ss01 by nine.ss01.circled;
|
||||||
|
sub enclosingcirclecomb exclam by exclam.circled;
|
||||||
|
sub enclosingcirclecomb question by question.circled;
|
||||||
|
sub enclosingcirclecomb numbersign by numbersign.circled;
|
||||||
|
sub enclosingcirclecomb hyphen by hyphen.circled;
|
||||||
|
sub enclosingcirclecomb less by less.circled;
|
||||||
|
sub enclosingcirclecomb greater by greater.circled;
|
||||||
|
sub enclosingcirclecomb equal by equal.circled;
|
||||||
|
sub enclosingcirclecomb plus by plus.circled;
|
||||||
|
sub enclosingcirclecomb minus by minus.circled;
|
||||||
|
sub enclosingcirclecomb multiply by multiply.circled;
|
||||||
|
sub enclosingcirclecomb divide by divide.circled;
|
||||||
|
sub enclosingcirclecomb upArrow by upArrow.circled;
|
||||||
|
sub enclosingcirclecomb downArrow by downArrow.circled;
|
||||||
|
sub enclosingcirclecomb leftArrow by leftArrow.circled;
|
||||||
|
sub enclosingcirclecomb rightArrow by rightArrow.circled;
|
||||||
|
sub enclosingcirclecomb dngb_check by dngb_check.circled;
|
||||||
|
sub enclosingcirclecomb dngb_ballotx by dngb_ballotx.circled;
|
||||||
81
src/features/salt.fea
Normal file
81
src/features/salt.fea
Normal file
|
|
@ -0,0 +1,81 @@
|
||||||
|
sub one by one.ss01;
|
||||||
|
sub one.tf by one.tf.ss01;
|
||||||
|
sub three by three.1;
|
||||||
|
sub three.tf by three.1.tf;
|
||||||
|
sub four by four.ss01;
|
||||||
|
sub four.tf by four.tf.ss01;
|
||||||
|
sub six by six.ss01;
|
||||||
|
sub six.tf by six.tf.ss01;
|
||||||
|
sub nine by nine.ss01;
|
||||||
|
sub nine.tf by nine.tf.ss01;
|
||||||
|
|
||||||
|
sub a by a.1;
|
||||||
|
sub aacute by aacute.1;
|
||||||
|
sub abreve by abreve.1;
|
||||||
|
sub abreveacute by abreveacute.1;
|
||||||
|
sub abrevedotbelow by abrevedotbelow.1;
|
||||||
|
sub abrevegrave by abrevegrave.1;
|
||||||
|
sub abrevehookabove by abrevehookabove.1;
|
||||||
|
sub abrevetilde by abrevetilde.1;
|
||||||
|
sub acaron by acaron.1;
|
||||||
|
sub acircumflex by acircumflex.1;
|
||||||
|
sub acircumflexacute by acircumflexacute.1;
|
||||||
|
sub acircumflexdotbelow by acircumflexdotbelow.1;
|
||||||
|
sub acircumflexgrave by acircumflexgrave.1;
|
||||||
|
sub acircumflexhookabove by acircumflexhookabove.1;
|
||||||
|
sub acircumflextilde by acircumflextilde.1;
|
||||||
|
sub adblgrave by adblgrave.1;
|
||||||
|
sub adieresis by adieresis.1;
|
||||||
|
sub adieresismacron by adieresismacron.1;
|
||||||
|
sub uni0227 by uni0227.1;
|
||||||
|
sub adotbelow by adotbelow.1;
|
||||||
|
sub adotmacron by adotmacron.1;
|
||||||
|
sub agrave by agrave.1;
|
||||||
|
sub ahookabove by ahookabove.1;
|
||||||
|
sub ainvertedbreve by ainvertedbreve.1;
|
||||||
|
sub amacron by amacron.1;
|
||||||
|
sub aogonek by aogonek.1;
|
||||||
|
sub arighthalfring by arighthalfring.1;
|
||||||
|
sub aring by aring.1;
|
||||||
|
sub aringacute by aringacute.1;
|
||||||
|
sub aringbelow by aringbelow.1;
|
||||||
|
sub atilde by atilde.1;
|
||||||
|
|
||||||
|
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;
|
||||||
|
sub lacute by lacute.ss02;
|
||||||
|
sub lcommaaccent by lcommaaccent.ss02;
|
||||||
|
sub lcaron by lcaron.ss02;
|
||||||
|
sub ldotbelow by ldotbelow.ss02;
|
||||||
|
sub ldotbelowmacron by ldotbelowmacron.ss02;
|
||||||
|
sub llinebelow by llinebelow.ss02;
|
||||||
|
sub lcircumflexbelow by lcircumflexbelow.ss02;
|
||||||
|
|
||||||
|
sub r by r.1;
|
||||||
|
sub rrthook by rrthook.1;
|
||||||
|
sub uni024D by uni024D.1;
|
||||||
|
sub rdescend by rdescend.1;
|
||||||
|
sub racute by racute.1;
|
||||||
|
sub rcommaaccent by rcommaaccent.1;
|
||||||
|
sub rcaron by rcaron.1;
|
||||||
|
sub rdblgrave by rdblgrave.1;
|
||||||
|
sub rinvertedbreve by rinvertedbreve.1;
|
||||||
|
sub rdotaccent by rdotaccent.1;
|
||||||
|
sub rdotbelow by rdotbelow.1;
|
||||||
|
sub rdotbelowmacron by rdotbelowmacron.1;
|
||||||
|
sub rlinebelow by rlinebelow.1;
|
||||||
|
|
||||||
|
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;
|
||||||
|
sub Gcommaaccent by Gcommaaccent.1;
|
||||||
|
sub Gcaron by Gcaron.1;
|
||||||
|
sub Gacute by Gacute.1;
|
||||||
|
sub Gmacron by Gmacron.1;
|
||||||
21
src/features/ss01-alt-digits.fea
Normal file
21
src/features/ss01-alt-digits.fea
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
featureNames { name "Alternate digits"; };
|
||||||
|
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 three by three.1;
|
||||||
|
sub three.tf by three.1.tf;
|
||||||
|
sub three.squared by three.1.squared;
|
||||||
|
sub three.circled by three.1.circled;
|
||||||
|
sub four by four.ss01;
|
||||||
|
sub four.tf by four.tf.ss01;
|
||||||
|
sub four.squared by four.ss01.squared;
|
||||||
|
sub four.circled by four.ss01.circled;
|
||||||
|
sub six by six.ss01;
|
||||||
|
sub six.tf by six.tf.ss01;
|
||||||
|
sub six.squared by six.ss01.squared;
|
||||||
|
sub six.circled by six.ss01.circled;
|
||||||
|
sub nine by nine.ss01;
|
||||||
|
sub nine.tf by nine.tf.ss01;
|
||||||
|
sub nine.squared by nine.ss01.squared;
|
||||||
|
sub nine.circled by nine.ss01.circled;
|
||||||
51
src/features/ss02-disambiguation.fea
Normal file
51
src/features/ss02-disambiguation.fea
Normal file
|
|
@ -0,0 +1,51 @@
|
||||||
|
featureNames { name "Disambiguation"; };
|
||||||
|
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;
|
||||||
|
sub lacute by lacute.ss02;
|
||||||
|
sub lcommaaccent by lcommaaccent.ss02;
|
||||||
|
sub lcaron by lcaron.ss02;
|
||||||
|
sub ldotbelow by ldotbelow.ss02;
|
||||||
|
sub ldotbelowmacron by ldotbelowmacron.ss02;
|
||||||
|
sub llinebelow by llinebelow.ss02;
|
||||||
|
sub lcircumflexbelow by lcircumflexbelow.ss02;
|
||||||
|
sub zero by zero.slash;
|
||||||
|
sub zero.tf by zero.tf.slash;
|
||||||
|
sub zero.squared by zero.slash.squared;
|
||||||
|
sub zero.circled by zero.slash.circled;
|
||||||
|
sub germandbls by germandbls.1;
|
||||||
|
sub I by I.1;
|
||||||
|
sub Idieresis by Idieresis.1;
|
||||||
|
sub Idieresisacute by Idieresisacute.1;
|
||||||
|
sub Istroke by Istroke.1;
|
||||||
|
sub Itildebelow by Itildebelow.1;
|
||||||
|
sub Igrave by Igrave.1;
|
||||||
|
sub Iacute by Iacute.1;
|
||||||
|
sub Icircumflex by Icircumflex.1;
|
||||||
|
sub Itilde by Itilde.1;
|
||||||
|
sub Imacron by Imacron.1;
|
||||||
|
sub Ibreve by Ibreve.1;
|
||||||
|
sub Iogonek by Iogonek.1;
|
||||||
|
sub Idotaccent by Idotaccent.1;
|
||||||
|
sub Icaron by Icaron.1;
|
||||||
|
sub Idblgrave by Idblgrave.1;
|
||||||
|
sub Iinvertedbreve by Iinvertedbreve.1;
|
||||||
|
sub Ihookabove by Ihookabove.1;
|
||||||
|
sub Idotbelow by Idotbelow.1;
|
||||||
|
sub uni1F38 by uni1F38.1;
|
||||||
|
sub uni1F39 by uni1F39.1;
|
||||||
|
sub uni1F3A by uni1F3A.1;
|
||||||
|
sub uni1F3B by uni1F3B.1;
|
||||||
|
sub uni1F3C by uni1F3C.1;
|
||||||
|
sub uni1F3D by uni1F3D.1;
|
||||||
|
sub uni1F3E by uni1F3E.1;
|
||||||
|
sub uni1F3F by uni1F3F.1;
|
||||||
|
sub uni1FD8 by uni1FD8.1;
|
||||||
|
sub uni1FD9 by uni1FD9.1;
|
||||||
|
sub uni1FDA by uni1FDA.1;
|
||||||
|
sub uni1FDB by uni1FDB.1;
|
||||||
|
sub afii10055 by afii10055.1;
|
||||||
|
sub afii10056 by afii10056.1;
|
||||||
332
src/features/ss03-r-curve.fea
Normal file
332
src/features/ss03-r-curve.fea
Normal file
|
|
@ -0,0 +1,332 @@
|
||||||
|
featureNames { name "Lower case r curves into round neighbors"; };
|
||||||
|
# curved "r" when it meets a curved shape, e.g. "ro"
|
||||||
|
@straight_r = [
|
||||||
|
r
|
||||||
|
rrthook
|
||||||
|
uni024D
|
||||||
|
rdescend
|
||||||
|
racute
|
||||||
|
rcommaaccent
|
||||||
|
rcaron
|
||||||
|
rdblgrave
|
||||||
|
rinvertedbreve
|
||||||
|
rdotaccent
|
||||||
|
rdotbelow
|
||||||
|
rdotbelowmacron
|
||||||
|
rlinebelow
|
||||||
|
];
|
||||||
|
@curved_r = [
|
||||||
|
r.1
|
||||||
|
rrthook.1
|
||||||
|
uni024D.1
|
||||||
|
rdescend.1
|
||||||
|
racute.1
|
||||||
|
rcommaaccent.1
|
||||||
|
rcaron.1
|
||||||
|
rdblgrave.1
|
||||||
|
rinvertedbreve.1
|
||||||
|
rdotaccent.1
|
||||||
|
rdotbelow.1
|
||||||
|
rdotbelowmacron.1
|
||||||
|
rlinebelow.1
|
||||||
|
];
|
||||||
|
|
||||||
|
# lower case-sized glyphs where the left side is curved, like "o"
|
||||||
|
@lc_left_side_curved = [
|
||||||
|
a
|
||||||
|
adieresis
|
||||||
|
atilde
|
||||||
|
arighthalfring
|
||||||
|
agrave
|
||||||
|
aacute
|
||||||
|
acircumflex
|
||||||
|
aring
|
||||||
|
amacron
|
||||||
|
abreve
|
||||||
|
aogonek
|
||||||
|
acaron
|
||||||
|
adieresismacron
|
||||||
|
adotmacron
|
||||||
|
aringacute
|
||||||
|
adblgrave
|
||||||
|
ainvertedbreve
|
||||||
|
uni0227
|
||||||
|
aringbelow
|
||||||
|
adotbelow
|
||||||
|
ahookabove
|
||||||
|
acircumflexacute
|
||||||
|
acircumflexgrave
|
||||||
|
acircumflexhookabove
|
||||||
|
acircumflextilde
|
||||||
|
acircumflexdotbelow
|
||||||
|
abreveacute
|
||||||
|
abrevegrave
|
||||||
|
abrevehookabove
|
||||||
|
abrevetilde
|
||||||
|
abrevedotbelow
|
||||||
|
acyrillic
|
||||||
|
abrevecyrillic
|
||||||
|
adieresiscyrillic
|
||||||
|
ae
|
||||||
|
aemacron
|
||||||
|
aeacute
|
||||||
|
aiecyrillic
|
||||||
|
c
|
||||||
|
uni023C
|
||||||
|
chook
|
||||||
|
ccurl
|
||||||
|
ccedilla
|
||||||
|
cacute
|
||||||
|
ccircumflex
|
||||||
|
cdotaccent
|
||||||
|
ccaron
|
||||||
|
ccedillaacute
|
||||||
|
sigmalunatesymbolgreek
|
||||||
|
escyrillic
|
||||||
|
d
|
||||||
|
dcroat
|
||||||
|
drthook
|
||||||
|
dhook
|
||||||
|
dtopbar
|
||||||
|
uni0221
|
||||||
|
dcaron
|
||||||
|
ddotaccent
|
||||||
|
ddotbelow
|
||||||
|
dlinebelow
|
||||||
|
dcedilla
|
||||||
|
dcircumflexbelow
|
||||||
|
dz
|
||||||
|
dzcaron
|
||||||
|
dzcurl
|
||||||
|
dyogh
|
||||||
|
dong
|
||||||
|
e
|
||||||
|
edieresis
|
||||||
|
uni0247
|
||||||
|
egrave
|
||||||
|
eacute
|
||||||
|
ecircumflex
|
||||||
|
emacron
|
||||||
|
ebreve
|
||||||
|
edotaccent
|
||||||
|
eogonek
|
||||||
|
ecaron
|
||||||
|
edblgrave
|
||||||
|
einvertedbreve
|
||||||
|
uni0229
|
||||||
|
emacrongrave
|
||||||
|
emacronacute
|
||||||
|
ecircumflexbelow
|
||||||
|
etildebelow
|
||||||
|
ecedillabreve
|
||||||
|
edotbelow
|
||||||
|
ehookabove
|
||||||
|
etilde
|
||||||
|
ecircumflexacute
|
||||||
|
ecircumflexgrave
|
||||||
|
ecircumflexhookabove
|
||||||
|
ecircumflextilde
|
||||||
|
ecircumflexdotbelow
|
||||||
|
iecyrillic
|
||||||
|
uni0450
|
||||||
|
iocyrillic
|
||||||
|
iebrevecyrillic
|
||||||
|
eturn
|
||||||
|
g
|
||||||
|
ghook
|
||||||
|
gbar
|
||||||
|
gcircumflex
|
||||||
|
gbreve
|
||||||
|
gdotaccent
|
||||||
|
gcommaaccent
|
||||||
|
gcaron
|
||||||
|
gacute
|
||||||
|
gmacron
|
||||||
|
o
|
||||||
|
odieresis
|
||||||
|
otilde
|
||||||
|
oslash
|
||||||
|
ohorn
|
||||||
|
ograve
|
||||||
|
oacute
|
||||||
|
ocircumflex
|
||||||
|
omacron
|
||||||
|
obreve
|
||||||
|
ohungarumlaut
|
||||||
|
ocaron
|
||||||
|
oogonek
|
||||||
|
oogonekmacron
|
||||||
|
odblgrave
|
||||||
|
oinvertedbreve
|
||||||
|
uni022B
|
||||||
|
uni022D
|
||||||
|
uni022F
|
||||||
|
uni0231
|
||||||
|
otildeacute
|
||||||
|
otildedieresis
|
||||||
|
omacrongrave
|
||||||
|
omacronacute
|
||||||
|
odotbelow
|
||||||
|
ohookabove
|
||||||
|
ocircumflexacute
|
||||||
|
ocircumflexgrave
|
||||||
|
ocircumflexhookabove
|
||||||
|
ocircumflextilde
|
||||||
|
ocircumflexdotbelow
|
||||||
|
ohornacute
|
||||||
|
ohorngrave
|
||||||
|
ohornhookabove
|
||||||
|
ohorntilde
|
||||||
|
ohorndotbelow
|
||||||
|
oslashacute
|
||||||
|
omicron
|
||||||
|
omicrontonos
|
||||||
|
uni1F40
|
||||||
|
uni1F41
|
||||||
|
uni1F42
|
||||||
|
uni1F43
|
||||||
|
uni1F44
|
||||||
|
uni1F45
|
||||||
|
uni1F78
|
||||||
|
fitacyrillic
|
||||||
|
obar
|
||||||
|
ocyrillic
|
||||||
|
odieresiscyrillic
|
||||||
|
oe
|
||||||
|
ukcyrillic
|
||||||
|
q
|
||||||
|
qhook
|
||||||
|
qrthook
|
||||||
|
s
|
||||||
|
srthook
|
||||||
|
uni023F
|
||||||
|
sacute
|
||||||
|
scircumflex
|
||||||
|
scedilla
|
||||||
|
scaron
|
||||||
|
scommaaccent
|
||||||
|
sdotaccent
|
||||||
|
sdotbelow
|
||||||
|
sacutedotaccent
|
||||||
|
scarondotaccent
|
||||||
|
sdotbelowdotaccent
|
||||||
|
dzecyrillic
|
||||||
|
tonetwo
|
||||||
|
eth
|
||||||
|
alpha
|
||||||
|
alphatonos
|
||||||
|
uni1F00
|
||||||
|
uni1F01
|
||||||
|
uni1F02
|
||||||
|
uni1F03
|
||||||
|
uni1F04
|
||||||
|
uni1F05
|
||||||
|
uni1F06
|
||||||
|
uni1F07
|
||||||
|
uni1F70
|
||||||
|
uni1F80
|
||||||
|
uni1F81
|
||||||
|
uni1F82
|
||||||
|
uni1F83
|
||||||
|
uni1F84
|
||||||
|
uni1F85
|
||||||
|
uni1F86
|
||||||
|
uni1F87
|
||||||
|
uni1FB0
|
||||||
|
uni1FB1
|
||||||
|
uni1FB2
|
||||||
|
uni1FB3
|
||||||
|
uni1FB4
|
||||||
|
uni1FB6
|
||||||
|
uni1FB7
|
||||||
|
delta
|
||||||
|
epsilon
|
||||||
|
epsilontonos
|
||||||
|
epsilonclosed
|
||||||
|
epsilon1
|
||||||
|
epsilon1rev
|
||||||
|
epsilon1revclosed
|
||||||
|
epsilon1revhook
|
||||||
|
uni1F10
|
||||||
|
uni1F11
|
||||||
|
uni1F12
|
||||||
|
uni1F13
|
||||||
|
uni1F14
|
||||||
|
uni1F15
|
||||||
|
uni1F72
|
||||||
|
rho
|
||||||
|
uni1FE4
|
||||||
|
uni1FE5
|
||||||
|
uni03FC
|
||||||
|
sigma1
|
||||||
|
sigma
|
||||||
|
phi
|
||||||
|
phigreek
|
||||||
|
omega
|
||||||
|
omegatonos
|
||||||
|
uni1F60
|
||||||
|
uni1F61
|
||||||
|
uni1F62
|
||||||
|
uni1F63
|
||||||
|
uni1F64
|
||||||
|
uni1F65
|
||||||
|
uni1F66
|
||||||
|
uni1F67
|
||||||
|
uni1F7C
|
||||||
|
uni1FA0
|
||||||
|
uni1FA1
|
||||||
|
uni1FA2
|
||||||
|
uni1FA3
|
||||||
|
uni1FA4
|
||||||
|
uni1FA5
|
||||||
|
uni1FA6
|
||||||
|
uni1FA7
|
||||||
|
uni1FF2
|
||||||
|
uni1FF3
|
||||||
|
uni1FF4
|
||||||
|
uni1FF6
|
||||||
|
uni1FF7
|
||||||
|
zecyrillic
|
||||||
|
efcyrillic
|
||||||
|
ereversedcyrillic
|
||||||
|
iacyrillic
|
||||||
|
ecyrillic
|
||||||
|
haabkhasiancyrillic
|
||||||
|
cent
|
||||||
|
manat
|
||||||
|
six.ss01
|
||||||
|
ascript
|
||||||
|
ascript_uni02DE
|
||||||
|
erev
|
||||||
|
schwa
|
||||||
|
schwahook
|
||||||
|
oopen
|
||||||
|
uni0238
|
||||||
|
uni0239
|
||||||
|
uni2184
|
||||||
|
aogonek.NAV
|
||||||
|
eogonek.NAV
|
||||||
|
oogonek.NAV
|
||||||
|
zedescendercyrillic
|
||||||
|
esdescendercyrillic
|
||||||
|
schwacyrillic
|
||||||
|
schwadieresiscyrillic
|
||||||
|
zedieresiscyrillic
|
||||||
|
obarredcyrillic
|
||||||
|
obarreddieresiscyrillic
|
||||||
|
uni04ED
|
||||||
|
koppacyrillic
|
||||||
|
uni037B
|
||||||
|
uni037C
|
||||||
|
uni037D
|
||||||
|
uni03D9
|
||||||
|
stigma
|
||||||
|
rho1
|
||||||
|
uni1F71
|
||||||
|
uni1F73
|
||||||
|
uni1F79
|
||||||
|
uni217D
|
||||||
|
uni217E
|
||||||
|
];
|
||||||
|
|
||||||
|
sub @straight_r' @lc_left_side_curved by @curved_r;
|
||||||
43
src/features/subs.fea
Normal file
43
src/features/subs.fea
Normal file
|
|
@ -0,0 +1,43 @@
|
||||||
|
sub a by a.subs;
|
||||||
|
sub b by b.subs;
|
||||||
|
sub c by c.subs;
|
||||||
|
sub d by d.subs;
|
||||||
|
sub e by e.subs;
|
||||||
|
sub f by f.subs;
|
||||||
|
sub g by g.subs;
|
||||||
|
sub h by h.subs;
|
||||||
|
sub i by i.subs;
|
||||||
|
sub j by j.subs;
|
||||||
|
sub k by k.subs;
|
||||||
|
sub [l l.ss02] by l.subs;
|
||||||
|
sub m by m.subs;
|
||||||
|
sub n by n.subs;
|
||||||
|
sub o by o.subs;
|
||||||
|
sub p by p.subs;
|
||||||
|
sub q by q.subs;
|
||||||
|
sub [r r.1] by r.subs;
|
||||||
|
sub s by s.subs;
|
||||||
|
sub t by t.subs;
|
||||||
|
sub u by u.subs;
|
||||||
|
sub v by v.subs;
|
||||||
|
sub w by w.subs;
|
||||||
|
sub x by x.subs;
|
||||||
|
sub y by y.subs;
|
||||||
|
sub z by z.subs;
|
||||||
|
sub [zero zero.slash zero.tf zero.tf.slash] by zero.subs;
|
||||||
|
sub [one one.ss01 one.tf one.tf.ss01] by one.subs;
|
||||||
|
sub [two two.tf] by two.subs;
|
||||||
|
sub [three three.1 three.tf three.1.tf] by three.subs;
|
||||||
|
sub [four four.ss01 four.tf four.tf.ss01] by four.subs;
|
||||||
|
sub [five five.tf] by five.subs;
|
||||||
|
sub [six six.ss01 six.tf six.tf.ss01] by six.subs;
|
||||||
|
sub [seven seven.tf] by seven.subs;
|
||||||
|
sub [eight eight.tf] by eight.subs;
|
||||||
|
sub [nine nine.ss01 nine.tf nine.tf.ss01] by nine.subs;
|
||||||
|
sub [parenleft parenleft.case] by parenleft.subs;
|
||||||
|
sub [parenright parenright.case] by parenright.subs;
|
||||||
|
sub [bracketleft bracketleft.case] by bracketleft.subs;
|
||||||
|
sub [bracketright bracketright.case] by bracketright.subs;
|
||||||
|
sub [plus plus.case] by plus.subs;
|
||||||
|
sub [minus minus.case hyphen hyphen.case] by minus.subs;
|
||||||
|
sub [equal equal.case] by equal.subs;
|
||||||
43
src/features/sups.fea
Normal file
43
src/features/sups.fea
Normal file
|
|
@ -0,0 +1,43 @@
|
||||||
|
sub a by a.sups;
|
||||||
|
sub b by b.sups;
|
||||||
|
sub c by c.sups;
|
||||||
|
sub d by d.sups;
|
||||||
|
sub e by e.sups;
|
||||||
|
sub f by f.sups;
|
||||||
|
sub g by g.sups;
|
||||||
|
sub h by h.sups;
|
||||||
|
sub i by i.sups;
|
||||||
|
sub j by j.sups;
|
||||||
|
sub k by k.sups;
|
||||||
|
sub [l l.ss02] by l.sups;
|
||||||
|
sub m by m.sups;
|
||||||
|
sub n by n.sups;
|
||||||
|
sub o by o.sups;
|
||||||
|
sub p by p.sups;
|
||||||
|
sub q by q.sups;
|
||||||
|
sub [r r.1] by r.sups;
|
||||||
|
sub s by s.sups;
|
||||||
|
sub t by t.sups;
|
||||||
|
sub u by u.sups;
|
||||||
|
sub v by v.sups;
|
||||||
|
sub w by w.sups;
|
||||||
|
sub x by x.sups;
|
||||||
|
sub y by y.sups;
|
||||||
|
sub z by z.sups;
|
||||||
|
sub [zero zero.slash zero.tf zero.tf.slash] by zero.sups;
|
||||||
|
sub [one one.ss01 one.tf one.tf.ss01] by one.sups;
|
||||||
|
sub [two two.tf] by two.sups;
|
||||||
|
sub [three three.1 three.tf three.1.tf] by three.sups;
|
||||||
|
sub [four four.ss01 four.tf four.tf.ss01] by four.sups;
|
||||||
|
sub [five five.tf] by five.sups;
|
||||||
|
sub [six six.ss01 six.tf six.tf.ss01] by six.sups;
|
||||||
|
sub [seven seven.tf] by seven.sups;
|
||||||
|
sub [eight eight.tf] by eight.sups;
|
||||||
|
sub [nine nine.ss01 nine.tf nine.tf.ss01] by nine.sups;
|
||||||
|
sub [parenleft parenleft.case] by parenleft.sups;
|
||||||
|
sub [parenright parenright.case] by parenright.sups;
|
||||||
|
sub [bracketleft bracketleft.case] by bracketleft.sups;
|
||||||
|
sub [bracketright bracketright.case] by bracketright.sups;
|
||||||
|
sub [plus plus.case] by plus.sups;
|
||||||
|
sub [minus minus.case hyphen hyphen.case] by minus.sups;
|
||||||
|
sub [equal equal.case] by equal.sups;
|
||||||
4
src/features/zero.fea
Normal file
4
src/features/zero.fea
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
sub zero by zero.slash;
|
||||||
|
sub zero.tf by zero.tf.slash;
|
||||||
|
sub zero.circled by zero.slash.circled;
|
||||||
|
sub zero.squared by zero.slash.squared;
|
||||||
Reference in a new issue