1// FeatureType::Ligatures
2pub const COMMON_LIGATURES_ON: u8 = 2;
3pub const COMMON_LIGATURES_OFF: u8 = 3;
4pub const RARE_LIGATURES_ON: u8 = 4;
5pub const RARE_LIGATURES_OFF: u8 = 5;
6pub const CONTEXTUAL_LIGATURES_ON: u8 = 18;
7pub const CONTEXTUAL_LIGATURES_OFF: u8 = 19;
8pub const HISTORICAL_LIGATURES_ON: u8 = 20;
9pub const HISTORICAL_LIGATURES_OFF: u8 = 21;
10
11// FeatureType::LetterCase
12pub const SMALL_CAPS: u8 = 3; // deprecated
13
14// FeatureType::VerticalSubstitution
15pub const SUBSTITUTE_VERTICAL_FORMS_ON: u8 = 0;
16pub const SUBSTITUTE_VERTICAL_FORMS_OFF: u8 = 1;
17
18// FeatureType::NumberSpacing
19pub const MONOSPACED_NUMBERS: u8 = 0;
20pub const PROPORTIONAL_NUMBERS: u8 = 1;
21
22// FeatureType::VerticalPosition
23pub const NORMAL_POSITION: u8 = 0;
24pub const SUPERIORS: u8 = 1;
25pub const INFERIORS: u8 = 2;
26pub const ORDINALS: u8 = 3;
27pub const SCIENTIFIC_INFERIORS: u8 = 4;
28
29// FeatureType::Fractions
30pub const NO_FRACTIONS: u8 = 0;
31pub const VERTICAL_FRACTIONS: u8 = 1;
32pub const DIAGONAL_FRACTIONS: u8 = 2;
33
34// FeatureType::TypographicExtras
35pub const SLASHED_ZERO_ON: u8 = 4;
36pub const SLASHED_ZERO_OFF: u8 = 5;
37
38// FeatureType::MathematicalExtras
39pub const MATHEMATICAL_GREEK_ON: u8 = 10;
40pub const MATHEMATICAL_GREEK_OFF: u8 = 11;
41
42// FeatureType::StyleOptions
43pub const NO_STYLE_OPTIONS: u8 = 0;
44pub const TITLING_CAPS: u8 = 4;
45
46// FeatureType::CharacterShape
47pub const TRADITIONAL_CHARACTERS: u8 = 0;
48pub const SIMPLIFIED_CHARACTERS: u8 = 1;
49pub const JIS1978_CHARACTERS: u8 = 2;
50pub const JIS1983_CHARACTERS: u8 = 3;
51pub const JIS1990_CHARACTERS: u8 = 4;
52pub const EXPERT_CHARACTERS: u8 = 10;
53pub const JIS2004_CHARACTERS: u8 = 11;
54pub const HOJO_CHARACTERS: u8 = 12;
55pub const NLCCHARACTERS: u8 = 13;
56pub const TRADITIONAL_NAMES_CHARACTERS: u8 = 14;
57
58// FeatureType::NumberCase
59pub const LOWER_CASE_NUMBERS: u8 = 0;
60pub const UPPER_CASE_NUMBERS: u8 = 1;
61
62// FeatureType::TextSpacing
63pub const PROPORTIONAL_TEXT: u8 = 0;
64pub const MONOSPACED_TEXT: u8 = 1;
65pub const HALF_WIDTH_TEXT: u8 = 2;
66pub const THIRD_WIDTH_TEXT: u8 = 3;
67pub const QUARTER_WIDTH_TEXT: u8 = 4;
68pub const ALT_PROPORTIONAL_TEXT: u8 = 5;
69pub const ALT_HALF_WIDTH_TEXT: u8 = 6;
70
71// FeatureType::Transliteration
72pub const NO_TRANSLITERATION: u8 = 0;
73pub const HANJA_TO_HANGUL: u8 = 1;
74
75// FeatureType::RubyKana
76pub const RUBY_KANA_ON: u8 = 2;
77pub const RUBY_KANA_OFF: u8 = 3;
78
79// FeatureType::ItalicCjkRoman
80pub const CJK_ITALIC_ROMAN_ON: u8 = 2;
81pub const CJK_ITALIC_ROMAN_OFF: u8 = 3;
82
83// FeatureType::CaseSensitiveLayout
84pub const CASE_SENSITIVE_LAYOUT_ON: u8 = 0;
85pub const CASE_SENSITIVE_LAYOUT_OFF: u8 = 1;
86pub const CASE_SENSITIVE_SPACING_ON: u8 = 2;
87pub const CASE_SENSITIVE_SPACING_OFF: u8 = 3;
88
89// FeatureType::AlternateKana
90pub const ALTERNATE_HORIZ_KANA_ON: u8 = 0;
91pub const ALTERNATE_HORIZ_KANA_OFF: u8 = 1;
92pub const ALTERNATE_VERT_KANA_ON: u8 = 2;
93pub const ALTERNATE_VERT_KANA_OFF: u8 = 3;
94
95// FeatureType::StylisticAlternatives
96pub const STYLISTIC_ALT_ONE_ON: u8 = 2;
97pub const STYLISTIC_ALT_ONE_OFF: u8 = 3;
98pub const STYLISTIC_ALT_TWO_ON: u8 = 4;
99pub const STYLISTIC_ALT_TWO_OFF: u8 = 5;
100pub const STYLISTIC_ALT_THREE_ON: u8 = 6;
101pub const STYLISTIC_ALT_THREE_OFF: u8 = 7;
102pub const STYLISTIC_ALT_FOUR_ON: u8 = 8;
103pub const STYLISTIC_ALT_FOUR_OFF: u8 = 9;
104pub const STYLISTIC_ALT_FIVE_ON: u8 = 10;
105pub const STYLISTIC_ALT_FIVE_OFF: u8 = 11;
106pub const STYLISTIC_ALT_SIX_ON: u8 = 12;
107pub const STYLISTIC_ALT_SIX_OFF: u8 = 13;
108pub const STYLISTIC_ALT_SEVEN_ON: u8 = 14;
109pub const STYLISTIC_ALT_SEVEN_OFF: u8 = 15;
110pub const STYLISTIC_ALT_EIGHT_ON: u8 = 16;
111pub const STYLISTIC_ALT_EIGHT_OFF: u8 = 17;
112pub const STYLISTIC_ALT_NINE_ON: u8 = 18;
113pub const STYLISTIC_ALT_NINE_OFF: u8 = 19;
114pub const STYLISTIC_ALT_TEN_ON: u8 = 20;
115pub const STYLISTIC_ALT_TEN_OFF: u8 = 21;
116pub const STYLISTIC_ALT_ELEVEN_ON: u8 = 22;
117pub const STYLISTIC_ALT_ELEVEN_OFF: u8 = 23;
118pub const STYLISTIC_ALT_TWELVE_ON: u8 = 24;
119pub const STYLISTIC_ALT_TWELVE_OFF: u8 = 25;
120pub const STYLISTIC_ALT_THIRTEEN_ON: u8 = 26;
121pub const STYLISTIC_ALT_THIRTEEN_OFF: u8 = 27;
122pub const STYLISTIC_ALT_FOURTEEN_ON: u8 = 28;
123pub const STYLISTIC_ALT_FOURTEEN_OFF: u8 = 29;
124pub const STYLISTIC_ALT_FIFTEEN_ON: u8 = 30;
125pub const STYLISTIC_ALT_FIFTEEN_OFF: u8 = 31;
126pub const STYLISTIC_ALT_SIXTEEN_ON: u8 = 32;
127pub const STYLISTIC_ALT_SIXTEEN_OFF: u8 = 33;
128pub const STYLISTIC_ALT_SEVENTEEN_ON: u8 = 34;
129pub const STYLISTIC_ALT_SEVENTEEN_OFF: u8 = 35;
130pub const STYLISTIC_ALT_EIGHTEEN_ON: u8 = 36;
131pub const STYLISTIC_ALT_EIGHTEEN_OFF: u8 = 37;
132pub const STYLISTIC_ALT_NINETEEN_ON: u8 = 38;
133pub const STYLISTIC_ALT_NINETEEN_OFF: u8 = 39;
134pub const STYLISTIC_ALT_TWENTY_ON: u8 = 40;
135pub const STYLISTIC_ALT_TWENTY_OFF: u8 = 41;
136
137// FeatureType::ContextualAlternatives
138pub const CONTEXTUAL_ALTERNATES_ON: u8 = 0;
139pub const CONTEXTUAL_ALTERNATES_OFF: u8 = 1;
140pub const SWASH_ALTERNATES_ON: u8 = 2;
141pub const SWASH_ALTERNATES_OFF: u8 = 3;
142pub const CONTEXTUAL_SWASH_ALTERNATES_ON: u8 = 4;
143pub const CONTEXTUAL_SWASH_ALTERNATES_OFF: u8 = 5;
144
145// FeatureType::LowerCase
146pub const DEFAULT_LOWER_CASE: u8 = 0;
147pub const LOWER_CASE_SMALL_CAPS: u8 = 1;
148pub const LOWER_CASE_PETITE_CAPS: u8 = 2;
149
150// FeatureType::UpperCase
151pub const DEFAULT_UPPER_CASE: u8 = 0;
152pub const UPPER_CASE_SMALL_CAPS: u8 = 1;
153pub const UPPER_CASE_PETITE_CAPS: u8 = 2;
154