aboutsummaryrefslogtreecommitdiff
path: root/Tests/feaLib/data
diff options
context:
space:
mode:
authorHaibo Huang <hhb@google.com>2020-04-29 13:50:28 -0700
committerHaibo Huang <hhb@google.com>2020-04-29 13:50:28 -0700
commitb8516dcfca3116c02a4d5cd9902ecb195beaee85 (patch)
treeb5a503e432cb400088474148cf5076139ac5d41d /Tests/feaLib/data
parent8a969f945330d362e7724d5f4c43894f749b7a8f (diff)
downloadfonttools-b8516dcfca3116c02a4d5cd9902ecb195beaee85.tar.gz
Upgrade fonttools to 4.9.0
Test: None Change-Id: I956a1e3045eccf004546c6927d541c7483f89705
Diffstat (limited to 'Tests/feaLib/data')
-rw-r--r--Tests/feaLib/data/AlternateChained.fea3
-rw-r--r--Tests/feaLib/data/AlternateChained.ttx78
-rw-r--r--Tests/feaLib/data/aalt_chain_contextual_subst.fea20
-rw-r--r--Tests/feaLib/data/aalt_chain_contextual_subst.ttx139
-rw-r--r--Tests/feaLib/data/lookupflag.fea13
-rw-r--r--Tests/feaLib/data/lookupflag.ttx49
6 files changed, 299 insertions, 3 deletions
diff --git a/Tests/feaLib/data/AlternateChained.fea b/Tests/feaLib/data/AlternateChained.fea
new file mode 100644
index 00000000..45177693
--- /dev/null
+++ b/Tests/feaLib/data/AlternateChained.fea
@@ -0,0 +1,3 @@
+feature test {
+ sub A B a' [Y y] Z from [a.alt1 a.alt2 a.alt3];
+} test;
diff --git a/Tests/feaLib/data/AlternateChained.ttx b/Tests/feaLib/data/AlternateChained.ttx
new file mode 100644
index 00000000..e02bb7d4
--- /dev/null
+++ b/Tests/feaLib/data/AlternateChained.ttx
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ttFont>
+
+ <GSUB>
+ <Version value="0x00010000"/>
+ <ScriptList>
+ <!-- ScriptCount=1 -->
+ <ScriptRecord index="0">
+ <ScriptTag value="DFLT"/>
+ <Script>
+ <DefaultLangSys>
+ <ReqFeatureIndex value="65535"/>
+ <!-- FeatureCount=1 -->
+ <FeatureIndex index="0" value="0"/>
+ </DefaultLangSys>
+ <!-- LangSysCount=0 -->
+ </Script>
+ </ScriptRecord>
+ </ScriptList>
+ <FeatureList>
+ <!-- FeatureCount=1 -->
+ <FeatureRecord index="0">
+ <FeatureTag value="test"/>
+ <Feature>
+ <!-- LookupCount=1 -->
+ <LookupListIndex index="0" value="0"/>
+ </Feature>
+ </FeatureRecord>
+ </FeatureList>
+ <LookupList>
+ <!-- LookupCount=2 -->
+ <Lookup index="0">
+ <LookupType value="6"/>
+ <LookupFlag value="0"/>
+ <!-- SubTableCount=1 -->
+ <ChainContextSubst index="0" Format="3">
+ <!-- BacktrackGlyphCount=2 -->
+ <BacktrackCoverage index="0">
+ <Glyph value="B"/>
+ </BacktrackCoverage>
+ <BacktrackCoverage index="1">
+ <Glyph value="A"/>
+ </BacktrackCoverage>
+ <!-- InputGlyphCount=1 -->
+ <InputCoverage index="0">
+ <Glyph value="a"/>
+ </InputCoverage>
+ <!-- LookAheadGlyphCount=2 -->
+ <LookAheadCoverage index="0">
+ <Glyph value="Y"/>
+ <Glyph value="y"/>
+ </LookAheadCoverage>
+ <LookAheadCoverage index="1">
+ <Glyph value="Z"/>
+ </LookAheadCoverage>
+ <!-- SubstCount=1 -->
+ <SubstLookupRecord index="0">
+ <SequenceIndex value="0"/>
+ <LookupListIndex value="1"/>
+ </SubstLookupRecord>
+ </ChainContextSubst>
+ </Lookup>
+ <Lookup index="1">
+ <LookupType value="3"/>
+ <LookupFlag value="0"/>
+ <!-- SubTableCount=1 -->
+ <AlternateSubst index="0">
+ <AlternateSet glyph="a">
+ <Alternate glyph="a.alt1"/>
+ <Alternate glyph="a.alt2"/>
+ <Alternate glyph="a.alt3"/>
+ </AlternateSet>
+ </AlternateSubst>
+ </Lookup>
+ </LookupList>
+ </GSUB>
+
+</ttFont>
diff --git a/Tests/feaLib/data/aalt_chain_contextual_subst.fea b/Tests/feaLib/data/aalt_chain_contextual_subst.fea
new file mode 100644
index 00000000..677c2304
--- /dev/null
+++ b/Tests/feaLib/data/aalt_chain_contextual_subst.fea
@@ -0,0 +1,20 @@
+# https://github.com/googlefonts/fontmake/issues/648
+
+lookup CNTXT_LIGS {
+ sub f i by f_i;
+ sub c t by c_t;
+} CNTXT_LIGS;
+
+lookup CNTXT_SUB {
+ sub n by n.end;
+ sub s by s.end;
+} CNTXT_SUB;
+
+feature calt {
+ sub [a e i o u] f' lookup CNTXT_LIGS i' n' lookup CNTXT_SUB;
+ sub [a e i o u] c' lookup CNTXT_LIGS t' s' lookup CNTXT_SUB;
+} calt;
+
+feature aalt {
+ feature calt;
+} aalt;
diff --git a/Tests/feaLib/data/aalt_chain_contextual_subst.ttx b/Tests/feaLib/data/aalt_chain_contextual_subst.ttx
new file mode 100644
index 00000000..256a9c72
--- /dev/null
+++ b/Tests/feaLib/data/aalt_chain_contextual_subst.ttx
@@ -0,0 +1,139 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ttFont>
+
+ <GSUB>
+ <Version value="0x00010000"/>
+ <ScriptList>
+ <!-- ScriptCount=1 -->
+ <ScriptRecord index="0">
+ <ScriptTag value="DFLT"/>
+ <Script>
+ <DefaultLangSys>
+ <ReqFeatureIndex value="65535"/>
+ <!-- FeatureCount=2 -->
+ <FeatureIndex index="0" value="0"/>
+ <FeatureIndex index="1" value="1"/>
+ </DefaultLangSys>
+ <!-- LangSysCount=0 -->
+ </Script>
+ </ScriptRecord>
+ </ScriptList>
+ <FeatureList>
+ <!-- FeatureCount=2 -->
+ <FeatureRecord index="0">
+ <FeatureTag value="aalt"/>
+ <Feature>
+ <!-- LookupCount=1 -->
+ <LookupListIndex index="0" value="0"/>
+ </Feature>
+ </FeatureRecord>
+ <FeatureRecord index="1">
+ <FeatureTag value="calt"/>
+ <Feature>
+ <!-- LookupCount=1 -->
+ <LookupListIndex index="0" value="3"/>
+ </Feature>
+ </FeatureRecord>
+ </FeatureList>
+ <LookupList>
+ <!-- LookupCount=4 -->
+ <Lookup index="0">
+ <LookupType value="1"/>
+ <LookupFlag value="0"/>
+ <!-- SubTableCount=1 -->
+ <SingleSubst index="0">
+ <Substitution in="n" out="n.end"/>
+ <Substitution in="s" out="s.end"/>
+ </SingleSubst>
+ </Lookup>
+ <Lookup index="1">
+ <LookupType value="4"/>
+ <LookupFlag value="0"/>
+ <!-- SubTableCount=1 -->
+ <LigatureSubst index="0">
+ <LigatureSet glyph="c">
+ <Ligature components="t" glyph="c_t"/>
+ </LigatureSet>
+ <LigatureSet glyph="f">
+ <Ligature components="i" glyph="f_i"/>
+ </LigatureSet>
+ </LigatureSubst>
+ </Lookup>
+ <Lookup index="2">
+ <LookupType value="1"/>
+ <LookupFlag value="0"/>
+ <!-- SubTableCount=1 -->
+ <SingleSubst index="0">
+ <Substitution in="n" out="n.end"/>
+ <Substitution in="s" out="s.end"/>
+ </SingleSubst>
+ </Lookup>
+ <Lookup index="3">
+ <LookupType value="6"/>
+ <LookupFlag value="0"/>
+ <!-- SubTableCount=2 -->
+ <ChainContextSubst index="0" Format="3">
+ <!-- BacktrackGlyphCount=1 -->
+ <BacktrackCoverage index="0">
+ <Glyph value="a"/>
+ <Glyph value="e"/>
+ <Glyph value="i"/>
+ <Glyph value="o"/>
+ <Glyph value="u"/>
+ </BacktrackCoverage>
+ <!-- InputGlyphCount=3 -->
+ <InputCoverage index="0">
+ <Glyph value="f"/>
+ </InputCoverage>
+ <InputCoverage index="1">
+ <Glyph value="i"/>
+ </InputCoverage>
+ <InputCoverage index="2">
+ <Glyph value="n"/>
+ </InputCoverage>
+ <!-- LookAheadGlyphCount=0 -->
+ <!-- SubstCount=2 -->
+ <SubstLookupRecord index="0">
+ <SequenceIndex value="0"/>
+ <LookupListIndex value="1"/>
+ </SubstLookupRecord>
+ <SubstLookupRecord index="1">
+ <SequenceIndex value="2"/>
+ <LookupListIndex value="2"/>
+ </SubstLookupRecord>
+ </ChainContextSubst>
+ <ChainContextSubst index="1" Format="3">
+ <!-- BacktrackGlyphCount=1 -->
+ <BacktrackCoverage index="0">
+ <Glyph value="a"/>
+ <Glyph value="e"/>
+ <Glyph value="i"/>
+ <Glyph value="o"/>
+ <Glyph value="u"/>
+ </BacktrackCoverage>
+ <!-- InputGlyphCount=3 -->
+ <InputCoverage index="0">
+ <Glyph value="c"/>
+ </InputCoverage>
+ <InputCoverage index="1">
+ <Glyph value="t"/>
+ </InputCoverage>
+ <InputCoverage index="2">
+ <Glyph value="s"/>
+ </InputCoverage>
+ <!-- LookAheadGlyphCount=0 -->
+ <!-- SubstCount=2 -->
+ <SubstLookupRecord index="0">
+ <SequenceIndex value="0"/>
+ <LookupListIndex value="1"/>
+ </SubstLookupRecord>
+ <SubstLookupRecord index="1">
+ <SequenceIndex value="2"/>
+ <LookupListIndex value="2"/>
+ </SubstLookupRecord>
+ </ChainContextSubst>
+ </Lookup>
+ </LookupList>
+ </GSUB>
+
+</ttFont>
diff --git a/Tests/feaLib/data/lookupflag.fea b/Tests/feaLib/data/lookupflag.fea
index ced046b6..1828c43e 100644
--- a/Tests/feaLib/data/lookupflag.fea
+++ b/Tests/feaLib/data/lookupflag.fea
@@ -134,3 +134,16 @@ feature test {
pos one 1;
} V;
} test;
+
+feature test {
+ lookup W {
+ lookupflag IgnoreMarks;
+ script latn;
+ pos one 1;
+ } W;
+ lookup X {
+ lookupflag IgnoreMarks;
+ script latn;
+ pos two 2;
+ } X;
+} test;
diff --git a/Tests/feaLib/data/lookupflag.ttx b/Tests/feaLib/data/lookupflag.ttx
index 82f1945e..760eab31 100644
--- a/Tests/feaLib/data/lookupflag.ttx
+++ b/Tests/feaLib/data/lookupflag.ttx
@@ -43,7 +43,7 @@
<GPOS>
<Version value="0x00010000"/>
<ScriptList>
- <!-- ScriptCount=1 -->
+ <!-- ScriptCount=2 -->
<ScriptRecord index="0">
<ScriptTag value="DFLT"/>
<Script>
@@ -55,9 +55,20 @@
<!-- LangSysCount=0 -->
</Script>
</ScriptRecord>
+ <ScriptRecord index="1">
+ <ScriptTag value="latn"/>
+ <Script>
+ <DefaultLangSys>
+ <ReqFeatureIndex value="65535"/>
+ <!-- FeatureCount=1 -->
+ <FeatureIndex index="0" value="1"/>
+ </DefaultLangSys>
+ <!-- LangSysCount=0 -->
+ </Script>
+ </ScriptRecord>
</ScriptList>
<FeatureList>
- <!-- FeatureCount=1 -->
+ <!-- FeatureCount=2 -->
<FeatureRecord index="0">
<FeatureTag value="test"/>
<Feature>
@@ -86,9 +97,17 @@
<LookupListIndex index="21" value="21"/>
</Feature>
</FeatureRecord>
+ <FeatureRecord index="1">
+ <FeatureTag value="test"/>
+ <Feature>
+ <!-- LookupCount=2 -->
+ <LookupListIndex index="0" value="22"/>
+ <LookupListIndex index="1" value="23"/>
+ </Feature>
+ </FeatureRecord>
</FeatureList>
<LookupList>
- <!-- LookupCount=22 -->
+ <!-- LookupCount=24 -->
<Lookup index="0">
<LookupType value="1"/>
<LookupFlag value="1"/><!-- rightToLeft -->
@@ -357,6 +376,30 @@
<Value XAdvance="1"/>
</SinglePos>
</Lookup>
+ <Lookup index="22">
+ <LookupType value="1"/>
+ <LookupFlag value="0"/>
+ <!-- SubTableCount=1 -->
+ <SinglePos index="0" Format="1">
+ <Coverage>
+ <Glyph value="one"/>
+ </Coverage>
+ <ValueFormat value="4"/>
+ <Value XAdvance="1"/>
+ </SinglePos>
+ </Lookup>
+ <Lookup index="23">
+ <LookupType value="1"/>
+ <LookupFlag value="8"/><!-- ignoreMarks -->
+ <!-- SubTableCount=1 -->
+ <SinglePos index="0" Format="1">
+ <Coverage>
+ <Glyph value="two"/>
+ </Coverage>
+ <ValueFormat value="4"/>
+ <Value XAdvance="2"/>
+ </SinglePos>
+ </Lookup>
</LookupList>
</GPOS>