xref: /aosp_15_r20/external/fonttools/Tests/feaLib/data/spec8d.fea (revision e1fe3e4ad2793916b15cccdc4a7da52a7e1dd0e9)
1*e1fe3e4aSElliott Hughes# The cvParameters block must precede any of the rules in the feature.
2*e1fe3e4aSElliott Hughes# The ParamUILabelNameID entry may be omitted or repeated as often as needed.
3*e1fe3e4aSElliott Hughes# The other NameID types may be omitted, or defined only once.
4*e1fe3e4aSElliott Hughes# The NameID entries must be specified in the order listed below.
5*e1fe3e4aSElliott Hughes
6*e1fe3e4aSElliott Hughes# Following the set of NameID entries, a series of 24-bit Unicode values may be specified.
7*e1fe3e4aSElliott Hughes# These provide Unicode values for the base glyphs referenced by the feature.
8*e1fe3e4aSElliott Hughes# The developer may specify none, some, or all of the Unicode values for the base glyphs.
9*e1fe3e4aSElliott Hughes# The Unicode value may be written with either decimal or hexadecimal notation.
10*e1fe3e4aSElliott Hughes# The value must be preceded by '0x' if it is a hexadecimal value.
11*e1fe3e4aSElliott Hughes
12*e1fe3e4aSElliott Hughes# NOTE: The ParamUILabelNameID entries are used when one base glyph is mapped to more than
13*e1fe3e4aSElliott Hughes# one variant; the font designer may then specify one ParamUILabelNameID for each variant, in
14*e1fe3e4aSElliott Hughes# order to uniquely describe that variant. If any ParamUILabelNameID entries are specified,
15*e1fe3e4aSElliott Hughes# the number of ParamUILabelNameID entries must match the number of variants for each base
16*e1fe3e4aSElliott Hughes# glyph. If the Character Variant feature specifies more than one base glyph, then the set
17*e1fe3e4aSElliott Hughes# of NameID entries in the parameter block will be used for each base glyph and its variants.
18*e1fe3e4aSElliott Hughesfeature cv01 {
19*e1fe3e4aSElliott Hughes	cvParameters {
20*e1fe3e4aSElliott Hughes		FeatUILabelNameID {
21*e1fe3e4aSElliott Hughes#test-fea2fea: name "uilabel simple a";
22*e1fe3e4aSElliott Hughes			name 3 1 0x0409 "uilabel simple a"; # English US
23*e1fe3e4aSElliott Hughes#test-fea2fea: name 1 "uilabel simple a";
24*e1fe3e4aSElliott Hughes			name 1 0 0 "uilabel simple a"; # Mac English
25*e1fe3e4aSElliott Hughes		};
26*e1fe3e4aSElliott Hughes		FeatUITooltipTextNameID {
27*e1fe3e4aSElliott Hughes#test-fea2fea: name "tool tip simple a";
28*e1fe3e4aSElliott Hughes			name 3 1 0x0409 "tool tip simple a"; # English US
29*e1fe3e4aSElliott Hughes#test-fea2fea: name 1 "tool tip simple a";
30*e1fe3e4aSElliott Hughes			name 1 0 0 "tool tip simple a"; # Mac English
31*e1fe3e4aSElliott Hughes		};
32*e1fe3e4aSElliott Hughes		SampleTextNameID {
33*e1fe3e4aSElliott Hughes#test-fea2fea: name "sample text simple a";
34*e1fe3e4aSElliott Hughes			name 3 1 0x0409 "sample text simple a"; # English US
35*e1fe3e4aSElliott Hughes#test-fea2fea: name 1 "sample text simple a";
36*e1fe3e4aSElliott Hughes			name 1 0 0 "sample text simple a"; # Mac English
37*e1fe3e4aSElliott Hughes		};
38*e1fe3e4aSElliott Hughes		ParamUILabelNameID {
39*e1fe3e4aSElliott Hughes#test-fea2fea: name "param1 text simple a";
40*e1fe3e4aSElliott Hughes			name 3 1 0x0409 "param1 text simple a"; # English US
41*e1fe3e4aSElliott Hughes#test-fea2fea: name 1 "param1 text simple a";
42*e1fe3e4aSElliott Hughes			name 1 0 0 "param1 text simple a"; # Mac English
43*e1fe3e4aSElliott Hughes		};
44*e1fe3e4aSElliott Hughes		ParamUILabelNameID {
45*e1fe3e4aSElliott Hughes#test-fea2fea: name "param2 text simple a";
46*e1fe3e4aSElliott Hughes			name 3 1 0x0409 "param2 text simple a"; # English US
47*e1fe3e4aSElliott Hughes#test-fea2fea: name 1 "param2 text simple a";
48*e1fe3e4aSElliott Hughes			name 1 0 0 "param2 text simple a"; # Mac English
49*e1fe3e4aSElliott Hughes		};
50*e1fe3e4aSElliott Hughes#test-fea2fea: Character 0xa;
51*e1fe3e4aSElliott Hughes		Character 10;
52*e1fe3e4aSElliott Hughes#test-fea2fea: Character 0x5dde;
53*e1fe3e4aSElliott Hughes		Character 0x5DDE;
54*e1fe3e4aSElliott Hughes	};
55*e1fe3e4aSElliott Hughes# --- rules for this feature ---
56*e1fe3e4aSElliott Hughes    sub A by B;
57*e1fe3e4aSElliott Hughes} cv01;
58