xref: /aosp_15_r20/external/fonttools/Tests/feaLib/data/GSUB_6.ttx (revision e1fe3e4ad2793916b15cccdc4a7da52a7e1dd0e9)
1*e1fe3e4aSElliott Hughes<?xml version="1.0" encoding="UTF-8"?>
2*e1fe3e4aSElliott Hughes<ttFont>
3*e1fe3e4aSElliott Hughes
4*e1fe3e4aSElliott Hughes  <GSUB>
5*e1fe3e4aSElliott Hughes    <Version value="0x00010000"/>
6*e1fe3e4aSElliott Hughes    <ScriptList>
7*e1fe3e4aSElliott Hughes      <!-- ScriptCount=1 -->
8*e1fe3e4aSElliott Hughes      <ScriptRecord index="0">
9*e1fe3e4aSElliott Hughes        <ScriptTag value="DFLT"/>
10*e1fe3e4aSElliott Hughes        <Script>
11*e1fe3e4aSElliott Hughes          <DefaultLangSys>
12*e1fe3e4aSElliott Hughes            <ReqFeatureIndex value="65535"/>
13*e1fe3e4aSElliott Hughes            <!-- FeatureCount=1 -->
14*e1fe3e4aSElliott Hughes            <FeatureIndex index="0" value="0"/>
15*e1fe3e4aSElliott Hughes          </DefaultLangSys>
16*e1fe3e4aSElliott Hughes          <!-- LangSysCount=0 -->
17*e1fe3e4aSElliott Hughes        </Script>
18*e1fe3e4aSElliott Hughes      </ScriptRecord>
19*e1fe3e4aSElliott Hughes    </ScriptList>
20*e1fe3e4aSElliott Hughes    <FeatureList>
21*e1fe3e4aSElliott Hughes      <!-- FeatureCount=1 -->
22*e1fe3e4aSElliott Hughes      <FeatureRecord index="0">
23*e1fe3e4aSElliott Hughes        <FeatureTag value="test"/>
24*e1fe3e4aSElliott Hughes        <Feature>
25*e1fe3e4aSElliott Hughes          <!-- LookupCount=5 -->
26*e1fe3e4aSElliott Hughes          <LookupListIndex index="0" value="0"/>
27*e1fe3e4aSElliott Hughes          <LookupListIndex index="1" value="2"/>
28*e1fe3e4aSElliott Hughes          <LookupListIndex index="2" value="4"/>
29*e1fe3e4aSElliott Hughes          <LookupListIndex index="3" value="6"/>
30*e1fe3e4aSElliott Hughes          <LookupListIndex index="4" value="8"/>
31*e1fe3e4aSElliott Hughes        </Feature>
32*e1fe3e4aSElliott Hughes      </FeatureRecord>
33*e1fe3e4aSElliott Hughes    </FeatureList>
34*e1fe3e4aSElliott Hughes    <LookupList>
35*e1fe3e4aSElliott Hughes      <!-- LookupCount=9 -->
36*e1fe3e4aSElliott Hughes      <Lookup index="0">
37*e1fe3e4aSElliott Hughes        <LookupType value="6"/>
38*e1fe3e4aSElliott Hughes        <LookupFlag value="0"/>
39*e1fe3e4aSElliott Hughes        <!-- SubTableCount=2 -->
40*e1fe3e4aSElliott Hughes        <ChainContextSubst index="0" Format="3">
41*e1fe3e4aSElliott Hughes          <!-- BacktrackGlyphCount=2 -->
42*e1fe3e4aSElliott Hughes          <BacktrackCoverage index="0">
43*e1fe3e4aSElliott Hughes            <Glyph value="three"/>
44*e1fe3e4aSElliott Hughes          </BacktrackCoverage>
45*e1fe3e4aSElliott Hughes          <BacktrackCoverage index="1">
46*e1fe3e4aSElliott Hughes            <Glyph value="one"/>
47*e1fe3e4aSElliott Hughes            <Glyph value="two"/>
48*e1fe3e4aSElliott Hughes          </BacktrackCoverage>
49*e1fe3e4aSElliott Hughes          <!-- InputGlyphCount=1 -->
50*e1fe3e4aSElliott Hughes          <InputCoverage index="0">
51*e1fe3e4aSElliott Hughes            <Glyph value="A"/>
52*e1fe3e4aSElliott Hughes          </InputCoverage>
53*e1fe3e4aSElliott Hughes          <!-- LookAheadGlyphCount=0 -->
54*e1fe3e4aSElliott Hughes          <!-- SubstCount=1 -->
55*e1fe3e4aSElliott Hughes          <SubstLookupRecord index="0">
56*e1fe3e4aSElliott Hughes            <SequenceIndex value="0"/>
57*e1fe3e4aSElliott Hughes            <LookupListIndex value="1"/>
58*e1fe3e4aSElliott Hughes          </SubstLookupRecord>
59*e1fe3e4aSElliott Hughes        </ChainContextSubst>
60*e1fe3e4aSElliott Hughes        <ChainContextSubst index="1" Format="3">
61*e1fe3e4aSElliott Hughes          <!-- BacktrackGlyphCount=0 -->
62*e1fe3e4aSElliott Hughes          <!-- InputGlyphCount=1 -->
63*e1fe3e4aSElliott Hughes          <InputCoverage index="0">
64*e1fe3e4aSElliott Hughes            <Glyph value="B"/>
65*e1fe3e4aSElliott Hughes            <Glyph value="C"/>
66*e1fe3e4aSElliott Hughes            <Glyph value="D"/>
67*e1fe3e4aSElliott Hughes          </InputCoverage>
68*e1fe3e4aSElliott Hughes          <!-- LookAheadGlyphCount=2 -->
69*e1fe3e4aSElliott Hughes          <LookAheadCoverage index="0">
70*e1fe3e4aSElliott Hughes            <Glyph value="seven"/>
71*e1fe3e4aSElliott Hughes          </LookAheadCoverage>
72*e1fe3e4aSElliott Hughes          <LookAheadCoverage index="1">
73*e1fe3e4aSElliott Hughes            <Glyph value="eight"/>
74*e1fe3e4aSElliott Hughes            <Glyph value="nine"/>
75*e1fe3e4aSElliott Hughes          </LookAheadCoverage>
76*e1fe3e4aSElliott Hughes          <!-- SubstCount=1 -->
77*e1fe3e4aSElliott Hughes          <SubstLookupRecord index="0">
78*e1fe3e4aSElliott Hughes            <SequenceIndex value="0"/>
79*e1fe3e4aSElliott Hughes            <LookupListIndex value="1"/>
80*e1fe3e4aSElliott Hughes          </SubstLookupRecord>
81*e1fe3e4aSElliott Hughes        </ChainContextSubst>
82*e1fe3e4aSElliott Hughes      </Lookup>
83*e1fe3e4aSElliott Hughes      <Lookup index="1">
84*e1fe3e4aSElliott Hughes        <LookupType value="1"/>
85*e1fe3e4aSElliott Hughes        <LookupFlag value="0"/>
86*e1fe3e4aSElliott Hughes        <!-- SubTableCount=1 -->
87*e1fe3e4aSElliott Hughes        <SingleSubst index="0">
88*e1fe3e4aSElliott Hughes          <Substitution in="A" out="A.sc"/>
89*e1fe3e4aSElliott Hughes          <Substitution in="B" out="B.sc"/>
90*e1fe3e4aSElliott Hughes          <Substitution in="C" out="C.sc"/>
91*e1fe3e4aSElliott Hughes          <Substitution in="D" out="D.sc"/>
92*e1fe3e4aSElliott Hughes        </SingleSubst>
93*e1fe3e4aSElliott Hughes      </Lookup>
94*e1fe3e4aSElliott Hughes      <Lookup index="2">
95*e1fe3e4aSElliott Hughes        <LookupType value="6"/>
96*e1fe3e4aSElliott Hughes        <LookupFlag value="0"/>
97*e1fe3e4aSElliott Hughes        <!-- SubTableCount=1 -->
98*e1fe3e4aSElliott Hughes        <ChainContextSubst index="0" Format="3">
99*e1fe3e4aSElliott Hughes          <!-- BacktrackGlyphCount=3 -->
100*e1fe3e4aSElliott Hughes          <BacktrackCoverage index="0">
101*e1fe3e4aSElliott Hughes            <Glyph value="E"/>
102*e1fe3e4aSElliott Hughes          </BacktrackCoverage>
103*e1fe3e4aSElliott Hughes          <BacktrackCoverage index="1">
104*e1fe3e4aSElliott Hughes            <Glyph value="D"/>
105*e1fe3e4aSElliott Hughes            <Glyph value="d"/>
106*e1fe3e4aSElliott Hughes          </BacktrackCoverage>
107*e1fe3e4aSElliott Hughes          <BacktrackCoverage index="2">
108*e1fe3e4aSElliott Hughes            <Glyph value="A"/>
109*e1fe3e4aSElliott Hughes            <Glyph value="B"/>
110*e1fe3e4aSElliott Hughes            <Glyph value="C"/>
111*e1fe3e4aSElliott Hughes            <Glyph value="a"/>
112*e1fe3e4aSElliott Hughes            <Glyph value="b"/>
113*e1fe3e4aSElliott Hughes            <Glyph value="c"/>
114*e1fe3e4aSElliott Hughes          </BacktrackCoverage>
115*e1fe3e4aSElliott Hughes          <!-- InputGlyphCount=1 -->
116*e1fe3e4aSElliott Hughes          <InputCoverage index="0">
117*e1fe3e4aSElliott Hughes            <Glyph value="c_t"/>
118*e1fe3e4aSElliott Hughes          </InputCoverage>
119*e1fe3e4aSElliott Hughes          <!-- LookAheadGlyphCount=3 -->
120*e1fe3e4aSElliott Hughes          <LookAheadCoverage index="0">
121*e1fe3e4aSElliott Hughes            <Glyph value="V"/>
122*e1fe3e4aSElliott Hughes          </LookAheadCoverage>
123*e1fe3e4aSElliott Hughes          <LookAheadCoverage index="1">
124*e1fe3e4aSElliott Hughes            <Glyph value="W"/>
125*e1fe3e4aSElliott Hughes            <Glyph value="w"/>
126*e1fe3e4aSElliott Hughes          </LookAheadCoverage>
127*e1fe3e4aSElliott Hughes          <LookAheadCoverage index="2">
128*e1fe3e4aSElliott Hughes            <Glyph value="X"/>
129*e1fe3e4aSElliott Hughes            <Glyph value="Y"/>
130*e1fe3e4aSElliott Hughes            <Glyph value="Z"/>
131*e1fe3e4aSElliott Hughes            <Glyph value="x"/>
132*e1fe3e4aSElliott Hughes            <Glyph value="y"/>
133*e1fe3e4aSElliott Hughes            <Glyph value="z"/>
134*e1fe3e4aSElliott Hughes          </LookAheadCoverage>
135*e1fe3e4aSElliott Hughes          <!-- SubstCount=1 -->
136*e1fe3e4aSElliott Hughes          <SubstLookupRecord index="0">
137*e1fe3e4aSElliott Hughes            <SequenceIndex value="0"/>
138*e1fe3e4aSElliott Hughes            <LookupListIndex value="3"/>
139*e1fe3e4aSElliott Hughes          </SubstLookupRecord>
140*e1fe3e4aSElliott Hughes        </ChainContextSubst>
141*e1fe3e4aSElliott Hughes      </Lookup>
142*e1fe3e4aSElliott Hughes      <Lookup index="3">
143*e1fe3e4aSElliott Hughes        <LookupType value="2"/>
144*e1fe3e4aSElliott Hughes        <LookupFlag value="0"/>
145*e1fe3e4aSElliott Hughes        <!-- SubTableCount=1 -->
146*e1fe3e4aSElliott Hughes        <MultipleSubst index="0">
147*e1fe3e4aSElliott Hughes          <Substitution in="c_t" out="c,t"/>
148*e1fe3e4aSElliott Hughes        </MultipleSubst>
149*e1fe3e4aSElliott Hughes      </Lookup>
150*e1fe3e4aSElliott Hughes      <Lookup index="4">
151*e1fe3e4aSElliott Hughes        <LookupType value="6"/>
152*e1fe3e4aSElliott Hughes        <LookupFlag value="0"/>
153*e1fe3e4aSElliott Hughes        <!-- SubTableCount=1 -->
154*e1fe3e4aSElliott Hughes        <ChainContextSubst index="0" Format="3">
155*e1fe3e4aSElliott Hughes          <!-- BacktrackGlyphCount=1 -->
156*e1fe3e4aSElliott Hughes          <BacktrackCoverage index="0">
157*e1fe3e4aSElliott Hughes            <Glyph value="space"/>
158*e1fe3e4aSElliott Hughes            <Glyph value="semicolon"/>
159*e1fe3e4aSElliott Hughes            <Glyph value="comma"/>
160*e1fe3e4aSElliott Hughes          </BacktrackCoverage>
161*e1fe3e4aSElliott Hughes          <!-- InputGlyphCount=1 -->
162*e1fe3e4aSElliott Hughes          <InputCoverage index="0">
163*e1fe3e4aSElliott Hughes            <Glyph value="e"/>
164*e1fe3e4aSElliott Hughes          </InputCoverage>
165*e1fe3e4aSElliott Hughes          <!-- LookAheadGlyphCount=0 -->
166*e1fe3e4aSElliott Hughes          <!-- SubstCount=1 -->
167*e1fe3e4aSElliott Hughes          <SubstLookupRecord index="0">
168*e1fe3e4aSElliott Hughes            <SequenceIndex value="0"/>
169*e1fe3e4aSElliott Hughes            <LookupListIndex value="5"/>
170*e1fe3e4aSElliott Hughes          </SubstLookupRecord>
171*e1fe3e4aSElliott Hughes        </ChainContextSubst>
172*e1fe3e4aSElliott Hughes      </Lookup>
173*e1fe3e4aSElliott Hughes      <Lookup index="5">
174*e1fe3e4aSElliott Hughes        <LookupType value="3"/>
175*e1fe3e4aSElliott Hughes        <LookupFlag value="0"/>
176*e1fe3e4aSElliott Hughes        <!-- SubTableCount=1 -->
177*e1fe3e4aSElliott Hughes        <AlternateSubst index="0">
178*e1fe3e4aSElliott Hughes          <AlternateSet glyph="e">
179*e1fe3e4aSElliott Hughes            <Alternate glyph="e"/>
180*e1fe3e4aSElliott Hughes            <Alternate glyph="e.begin"/>
181*e1fe3e4aSElliott Hughes          </AlternateSet>
182*e1fe3e4aSElliott Hughes        </AlternateSubst>
183*e1fe3e4aSElliott Hughes      </Lookup>
184*e1fe3e4aSElliott Hughes      <Lookup index="6">
185*e1fe3e4aSElliott Hughes        <LookupType value="6"/>
186*e1fe3e4aSElliott Hughes        <LookupFlag value="0"/>
187*e1fe3e4aSElliott Hughes        <!-- SubTableCount=1 -->
188*e1fe3e4aSElliott Hughes        <ChainContextSubst index="0" Format="3">
189*e1fe3e4aSElliott Hughes          <!-- BacktrackGlyphCount=1 -->
190*e1fe3e4aSElliott Hughes          <BacktrackCoverage index="0">
191*e1fe3e4aSElliott Hughes            <Glyph value="A"/>
192*e1fe3e4aSElliott Hughes          </BacktrackCoverage>
193*e1fe3e4aSElliott Hughes          <!-- InputGlyphCount=2 -->
194*e1fe3e4aSElliott Hughes          <InputCoverage index="0">
195*e1fe3e4aSElliott Hughes            <Glyph value="C"/>
196*e1fe3e4aSElliott Hughes            <Glyph value="c"/>
197*e1fe3e4aSElliott Hughes          </InputCoverage>
198*e1fe3e4aSElliott Hughes          <InputCoverage index="1">
199*e1fe3e4aSElliott Hughes            <Glyph value="T"/>
200*e1fe3e4aSElliott Hughes            <Glyph value="t"/>
201*e1fe3e4aSElliott Hughes          </InputCoverage>
202*e1fe3e4aSElliott Hughes          <!-- LookAheadGlyphCount=1 -->
203*e1fe3e4aSElliott Hughes          <LookAheadCoverage index="0">
204*e1fe3e4aSElliott Hughes            <Glyph value="Z"/>
205*e1fe3e4aSElliott Hughes          </LookAheadCoverage>
206*e1fe3e4aSElliott Hughes          <!-- SubstCount=1 -->
207*e1fe3e4aSElliott Hughes          <SubstLookupRecord index="0">
208*e1fe3e4aSElliott Hughes            <SequenceIndex value="0"/>
209*e1fe3e4aSElliott Hughes            <LookupListIndex value="7"/>
210*e1fe3e4aSElliott Hughes          </SubstLookupRecord>
211*e1fe3e4aSElliott Hughes        </ChainContextSubst>
212*e1fe3e4aSElliott Hughes      </Lookup>
213*e1fe3e4aSElliott Hughes      <Lookup index="7">
214*e1fe3e4aSElliott Hughes        <LookupType value="4"/>
215*e1fe3e4aSElliott Hughes        <LookupFlag value="0"/>
216*e1fe3e4aSElliott Hughes        <!-- SubTableCount=1 -->
217*e1fe3e4aSElliott Hughes        <LigatureSubst index="0">
218*e1fe3e4aSElliott Hughes          <LigatureSet glyph="C">
219*e1fe3e4aSElliott Hughes            <Ligature components="T" glyph="c_t"/>
220*e1fe3e4aSElliott Hughes            <Ligature components="t" glyph="c_t"/>
221*e1fe3e4aSElliott Hughes          </LigatureSet>
222*e1fe3e4aSElliott Hughes          <LigatureSet glyph="c">
223*e1fe3e4aSElliott Hughes            <Ligature components="T" glyph="c_t"/>
224*e1fe3e4aSElliott Hughes            <Ligature components="t" glyph="c_t"/>
225*e1fe3e4aSElliott Hughes          </LigatureSet>
226*e1fe3e4aSElliott Hughes        </LigatureSubst>
227*e1fe3e4aSElliott Hughes      </Lookup>
228*e1fe3e4aSElliott Hughes      <Lookup index="8">
229*e1fe3e4aSElliott Hughes        <LookupType value="6"/>
230*e1fe3e4aSElliott Hughes        <LookupFlag value="0"/>
231*e1fe3e4aSElliott Hughes        <!-- SubTableCount=1 -->
232*e1fe3e4aSElliott Hughes        <ChainContextSubst index="0" Format="1">
233*e1fe3e4aSElliott Hughes          <Coverage>
234*e1fe3e4aSElliott Hughes            <Glyph value="c_t"/>
235*e1fe3e4aSElliott Hughes          </Coverage>
236*e1fe3e4aSElliott Hughes          <!-- ChainSubRuleSetCount=1 -->
237*e1fe3e4aSElliott Hughes          <ChainSubRuleSet index="0">
238*e1fe3e4aSElliott Hughes            <!-- ChainSubRuleCount=1 -->
239*e1fe3e4aSElliott Hughes            <ChainSubRule index="0">
240*e1fe3e4aSElliott Hughes              <!-- BacktrackGlyphCount=3 -->
241*e1fe3e4aSElliott Hughes              <Backtrack index="0" value="E"/>
242*e1fe3e4aSElliott Hughes              <Backtrack index="1" value="D"/>
243*e1fe3e4aSElliott Hughes              <Backtrack index="2" value="A"/>
244*e1fe3e4aSElliott Hughes              <!-- InputGlyphCount=1 -->
245*e1fe3e4aSElliott Hughes              <!-- LookAheadGlyphCount=3 -->
246*e1fe3e4aSElliott Hughes              <LookAhead index="0" value="V"/>
247*e1fe3e4aSElliott Hughes              <LookAhead index="1" value="W"/>
248*e1fe3e4aSElliott Hughes              <LookAhead index="2" value="X"/>
249*e1fe3e4aSElliott Hughes              <!-- SubstCount=1 -->
250*e1fe3e4aSElliott Hughes              <SubstLookupRecord index="0">
251*e1fe3e4aSElliott Hughes                <SequenceIndex value="0"/>
252*e1fe3e4aSElliott Hughes                <LookupListIndex value="2"/>
253*e1fe3e4aSElliott Hughes              </SubstLookupRecord>
254*e1fe3e4aSElliott Hughes            </ChainSubRule>
255*e1fe3e4aSElliott Hughes          </ChainSubRuleSet>
256*e1fe3e4aSElliott Hughes        </ChainContextSubst>
257*e1fe3e4aSElliott Hughes      </Lookup>
258*e1fe3e4aSElliott Hughes    </LookupList>
259*e1fe3e4aSElliott Hughes  </GSUB>
260*e1fe3e4aSElliott Hughes
261*e1fe3e4aSElliott Hughes</ttFont>
262