1 | /* == Start of generated table == */ |
2 | /* |
3 | * The following tables are generated by running: |
4 | * |
5 | * ./gen-emoji-table.py emoji-data.txt |
6 | * |
7 | * on file with this header: |
8 | * |
9 | * # emoji-data-14.0.0.txt |
10 | * # Date: 2021-08-26, 17:22:22 GMT |
11 | * # © 2021 Unicode®, Inc. |
12 | * # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. |
13 | * # For terms of use, see http://www.unicode.org/terms_of_use.html |
14 | * # |
15 | * # Emoji Data for UTS #51 |
16 | * # Used with Emoji Version 14.0 and subsequent minor revisions (if any) |
17 | * # |
18 | * # For documentation and usage, see http://www.unicode.org/reports/tr51 |
19 | */ |
20 | |
21 | #ifndef PANGO_EMOJI_TABLE_H |
22 | #define PANGO_EMOJI_TABLE_H |
23 | |
24 | #include <glib.h> |
25 | |
26 | struct Interval { |
27 | gunichar start, end; |
28 | }; |
29 | |
30 | static const struct Interval _pango_Emoji_table[] = |
31 | { |
32 | {0x0023, 0x0023}, |
33 | {0x002A, 0x002A}, |
34 | {0x0030, 0x0039}, |
35 | {0x00A9, 0x00A9}, |
36 | {0x00AE, 0x00AE}, |
37 | {0x203C, 0x203C}, |
38 | {0x2049, 0x2049}, |
39 | {0x2122, 0x2122}, |
40 | {0x2139, 0x2139}, |
41 | {0x2194, 0x2199}, |
42 | {0x21A9, 0x21AA}, |
43 | {0x231A, 0x231B}, |
44 | {0x2328, 0x2328}, |
45 | {0x23CF, 0x23CF}, |
46 | {0x23E9, 0x23F3}, |
47 | {0x23F8, 0x23FA}, |
48 | {0x24C2, 0x24C2}, |
49 | {0x25AA, 0x25AB}, |
50 | {0x25B6, 0x25B6}, |
51 | {0x25C0, 0x25C0}, |
52 | {0x25FB, 0x25FE}, |
53 | {0x2600, 0x2604}, |
54 | {0x260E, 0x260E}, |
55 | {0x2611, 0x2611}, |
56 | {0x2614, 0x2615}, |
57 | {0x2618, 0x2618}, |
58 | {0x261D, 0x261D}, |
59 | {0x2620, 0x2620}, |
60 | {0x2622, 0x2623}, |
61 | {0x2626, 0x2626}, |
62 | {0x262A, 0x262A}, |
63 | {0x262E, 0x262F}, |
64 | {0x2638, 0x263A}, |
65 | {0x2640, 0x2640}, |
66 | {0x2642, 0x2642}, |
67 | {0x2648, 0x2653}, |
68 | {0x265F, 0x2660}, |
69 | {0x2663, 0x2663}, |
70 | {0x2665, 0x2666}, |
71 | {0x2668, 0x2668}, |
72 | {0x267B, 0x267B}, |
73 | {0x267E, 0x267F}, |
74 | {0x2692, 0x2697}, |
75 | {0x2699, 0x2699}, |
76 | {0x269B, 0x269C}, |
77 | {0x26A0, 0x26A1}, |
78 | {0x26A7, 0x26A7}, |
79 | {0x26AA, 0x26AB}, |
80 | {0x26B0, 0x26B1}, |
81 | {0x26BD, 0x26BE}, |
82 | {0x26C4, 0x26C5}, |
83 | {0x26C8, 0x26C8}, |
84 | {0x26CE, 0x26CF}, |
85 | {0x26D1, 0x26D1}, |
86 | {0x26D3, 0x26D4}, |
87 | {0x26E9, 0x26EA}, |
88 | {0x26F0, 0x26F5}, |
89 | {0x26F7, 0x26FA}, |
90 | {0x26FD, 0x26FD}, |
91 | {0x2702, 0x2702}, |
92 | {0x2705, 0x2705}, |
93 | {0x2708, 0x270D}, |
94 | {0x270F, 0x270F}, |
95 | {0x2712, 0x2712}, |
96 | {0x2714, 0x2714}, |
97 | {0x2716, 0x2716}, |
98 | {0x271D, 0x271D}, |
99 | {0x2721, 0x2721}, |
100 | {0x2728, 0x2728}, |
101 | {0x2733, 0x2734}, |
102 | {0x2744, 0x2744}, |
103 | {0x2747, 0x2747}, |
104 | {0x274C, 0x274C}, |
105 | {0x274E, 0x274E}, |
106 | {0x2753, 0x2755}, |
107 | {0x2757, 0x2757}, |
108 | {0x2763, 0x2764}, |
109 | {0x2795, 0x2797}, |
110 | {0x27A1, 0x27A1}, |
111 | {0x27B0, 0x27B0}, |
112 | {0x27BF, 0x27BF}, |
113 | {0x2934, 0x2935}, |
114 | {0x2B05, 0x2B07}, |
115 | {0x2B1B, 0x2B1C}, |
116 | {0x2B50, 0x2B50}, |
117 | {0x2B55, 0x2B55}, |
118 | {0x3030, 0x3030}, |
119 | {0x303D, 0x303D}, |
120 | {0x3297, 0x3297}, |
121 | {0x3299, 0x3299}, |
122 | {0x1F004, 0x1F004}, |
123 | {0x1F0CF, 0x1F0CF}, |
124 | {0x1F170, 0x1F171}, |
125 | {0x1F17E, 0x1F17F}, |
126 | {0x1F18E, 0x1F18E}, |
127 | {0x1F191, 0x1F19A}, |
128 | {0x1F1E6, 0x1F1FF}, |
129 | {0x1F201, 0x1F202}, |
130 | {0x1F21A, 0x1F21A}, |
131 | {0x1F22F, 0x1F22F}, |
132 | {0x1F232, 0x1F23A}, |
133 | {0x1F250, 0x1F251}, |
134 | {0x1F300, 0x1F321}, |
135 | {0x1F324, 0x1F393}, |
136 | {0x1F396, 0x1F397}, |
137 | {0x1F399, 0x1F39B}, |
138 | {0x1F39E, 0x1F3F0}, |
139 | {0x1F3F3, 0x1F3F5}, |
140 | {0x1F3F7, 0x1F4FD}, |
141 | {0x1F4FF, 0x1F53D}, |
142 | {0x1F549, 0x1F54E}, |
143 | {0x1F550, 0x1F567}, |
144 | {0x1F56F, 0x1F570}, |
145 | {0x1F573, 0x1F57A}, |
146 | {0x1F587, 0x1F587}, |
147 | {0x1F58A, 0x1F58D}, |
148 | {0x1F590, 0x1F590}, |
149 | {0x1F595, 0x1F596}, |
150 | {0x1F5A4, 0x1F5A5}, |
151 | {0x1F5A8, 0x1F5A8}, |
152 | {0x1F5B1, 0x1F5B2}, |
153 | {0x1F5BC, 0x1F5BC}, |
154 | {0x1F5C2, 0x1F5C4}, |
155 | {0x1F5D1, 0x1F5D3}, |
156 | {0x1F5DC, 0x1F5DE}, |
157 | {0x1F5E1, 0x1F5E1}, |
158 | {0x1F5E3, 0x1F5E3}, |
159 | {0x1F5E8, 0x1F5E8}, |
160 | {0x1F5EF, 0x1F5EF}, |
161 | {0x1F5F3, 0x1F5F3}, |
162 | {0x1F5FA, 0x1F64F}, |
163 | {0x1F680, 0x1F6C5}, |
164 | {0x1F6CB, 0x1F6D2}, |
165 | {0x1F6D5, 0x1F6D7}, |
166 | {0x1F6DD, 0x1F6E5}, |
167 | {0x1F6E9, 0x1F6E9}, |
168 | {0x1F6EB, 0x1F6EC}, |
169 | {0x1F6F0, 0x1F6F0}, |
170 | {0x1F6F3, 0x1F6FC}, |
171 | {0x1F7E0, 0x1F7EB}, |
172 | {0x1F7F0, 0x1F7F0}, |
173 | {0x1F90C, 0x1F93A}, |
174 | {0x1F93C, 0x1F945}, |
175 | {0x1F947, 0x1F9FF}, |
176 | {0x1FA70, 0x1FA74}, |
177 | {0x1FA78, 0x1FA7C}, |
178 | {0x1FA80, 0x1FA86}, |
179 | {0x1FA90, 0x1FAAC}, |
180 | {0x1FAB0, 0x1FABA}, |
181 | {0x1FAC0, 0x1FAC5}, |
182 | {0x1FAD0, 0x1FAD9}, |
183 | {0x1FAE0, 0x1FAE7}, |
184 | {0x1FAF0, 0x1FAF6}, |
185 | }; |
186 | |
187 | static const struct Interval _pango_Emoji_Presentation_table[] = |
188 | { |
189 | {0x231A, 0x231B}, |
190 | {0x23E9, 0x23EC}, |
191 | {0x23F0, 0x23F0}, |
192 | {0x23F3, 0x23F3}, |
193 | {0x25FD, 0x25FE}, |
194 | {0x2614, 0x2615}, |
195 | {0x2648, 0x2653}, |
196 | {0x267F, 0x267F}, |
197 | {0x2693, 0x2693}, |
198 | {0x26A1, 0x26A1}, |
199 | {0x26AA, 0x26AB}, |
200 | {0x26BD, 0x26BE}, |
201 | {0x26C4, 0x26C5}, |
202 | {0x26CE, 0x26CE}, |
203 | {0x26D4, 0x26D4}, |
204 | {0x26EA, 0x26EA}, |
205 | {0x26F2, 0x26F3}, |
206 | {0x26F5, 0x26F5}, |
207 | {0x26FA, 0x26FA}, |
208 | {0x26FD, 0x26FD}, |
209 | {0x2705, 0x2705}, |
210 | {0x270A, 0x270B}, |
211 | {0x2728, 0x2728}, |
212 | {0x274C, 0x274C}, |
213 | {0x274E, 0x274E}, |
214 | {0x2753, 0x2755}, |
215 | {0x2757, 0x2757}, |
216 | {0x2795, 0x2797}, |
217 | {0x27B0, 0x27B0}, |
218 | {0x27BF, 0x27BF}, |
219 | {0x2B1B, 0x2B1C}, |
220 | {0x2B50, 0x2B50}, |
221 | {0x2B55, 0x2B55}, |
222 | {0x1F004, 0x1F004}, |
223 | {0x1F0CF, 0x1F0CF}, |
224 | {0x1F18E, 0x1F18E}, |
225 | {0x1F191, 0x1F19A}, |
226 | {0x1F1E6, 0x1F1FF}, |
227 | {0x1F201, 0x1F201}, |
228 | {0x1F21A, 0x1F21A}, |
229 | {0x1F22F, 0x1F22F}, |
230 | {0x1F232, 0x1F236}, |
231 | {0x1F238, 0x1F23A}, |
232 | {0x1F250, 0x1F251}, |
233 | {0x1F300, 0x1F320}, |
234 | {0x1F32D, 0x1F335}, |
235 | {0x1F337, 0x1F37C}, |
236 | {0x1F37E, 0x1F393}, |
237 | {0x1F3A0, 0x1F3CA}, |
238 | {0x1F3CF, 0x1F3D3}, |
239 | {0x1F3E0, 0x1F3F0}, |
240 | {0x1F3F4, 0x1F3F4}, |
241 | {0x1F3F8, 0x1F43E}, |
242 | {0x1F440, 0x1F440}, |
243 | {0x1F442, 0x1F4FC}, |
244 | {0x1F4FF, 0x1F53D}, |
245 | {0x1F54B, 0x1F54E}, |
246 | {0x1F550, 0x1F567}, |
247 | {0x1F57A, 0x1F57A}, |
248 | {0x1F595, 0x1F596}, |
249 | {0x1F5A4, 0x1F5A4}, |
250 | {0x1F5FB, 0x1F64F}, |
251 | {0x1F680, 0x1F6C5}, |
252 | {0x1F6CC, 0x1F6CC}, |
253 | {0x1F6D0, 0x1F6D2}, |
254 | {0x1F6D5, 0x1F6D7}, |
255 | {0x1F6DD, 0x1F6DF}, |
256 | {0x1F6EB, 0x1F6EC}, |
257 | {0x1F6F4, 0x1F6FC}, |
258 | {0x1F7E0, 0x1F7EB}, |
259 | {0x1F7F0, 0x1F7F0}, |
260 | {0x1F90C, 0x1F93A}, |
261 | {0x1F93C, 0x1F945}, |
262 | {0x1F947, 0x1F9FF}, |
263 | {0x1FA70, 0x1FA74}, |
264 | {0x1FA78, 0x1FA7C}, |
265 | {0x1FA80, 0x1FA86}, |
266 | {0x1FA90, 0x1FAAC}, |
267 | {0x1FAB0, 0x1FABA}, |
268 | {0x1FAC0, 0x1FAC5}, |
269 | {0x1FAD0, 0x1FAD9}, |
270 | {0x1FAE0, 0x1FAE7}, |
271 | {0x1FAF0, 0x1FAF6}, |
272 | }; |
273 | |
274 | static const struct Interval _pango_Emoji_Modifier_table[] = |
275 | { |
276 | {0x1F3FB, 0x1F3FF}, |
277 | }; |
278 | |
279 | static const struct Interval _pango_Emoji_Modifier_Base_table[] = |
280 | { |
281 | {0x261D, 0x261D}, |
282 | {0x26F9, 0x26F9}, |
283 | {0x270A, 0x270D}, |
284 | {0x1F385, 0x1F385}, |
285 | {0x1F3C2, 0x1F3C4}, |
286 | {0x1F3C7, 0x1F3C7}, |
287 | {0x1F3CA, 0x1F3CC}, |
288 | {0x1F442, 0x1F443}, |
289 | {0x1F446, 0x1F450}, |
290 | {0x1F466, 0x1F478}, |
291 | {0x1F47C, 0x1F47C}, |
292 | {0x1F481, 0x1F483}, |
293 | {0x1F485, 0x1F487}, |
294 | {0x1F48F, 0x1F48F}, |
295 | {0x1F491, 0x1F491}, |
296 | {0x1F4AA, 0x1F4AA}, |
297 | {0x1F574, 0x1F575}, |
298 | {0x1F57A, 0x1F57A}, |
299 | {0x1F590, 0x1F590}, |
300 | {0x1F595, 0x1F596}, |
301 | {0x1F645, 0x1F647}, |
302 | {0x1F64B, 0x1F64F}, |
303 | {0x1F6A3, 0x1F6A3}, |
304 | {0x1F6B4, 0x1F6B6}, |
305 | {0x1F6C0, 0x1F6C0}, |
306 | {0x1F6CC, 0x1F6CC}, |
307 | {0x1F90C, 0x1F90C}, |
308 | {0x1F90F, 0x1F90F}, |
309 | {0x1F918, 0x1F91F}, |
310 | {0x1F926, 0x1F926}, |
311 | {0x1F930, 0x1F939}, |
312 | {0x1F93C, 0x1F93E}, |
313 | {0x1F977, 0x1F977}, |
314 | {0x1F9B5, 0x1F9B6}, |
315 | {0x1F9B8, 0x1F9B9}, |
316 | {0x1F9BB, 0x1F9BB}, |
317 | {0x1F9CD, 0x1F9CF}, |
318 | {0x1F9D1, 0x1F9DD}, |
319 | {0x1FAC3, 0x1FAC5}, |
320 | {0x1FAF0, 0x1FAF6}, |
321 | }; |
322 | |
323 | static const struct Interval _pango_Extended_Pictographic_table[] = |
324 | { |
325 | {0x00A9, 0x00A9}, |
326 | {0x00AE, 0x00AE}, |
327 | {0x203C, 0x203C}, |
328 | {0x2049, 0x2049}, |
329 | {0x2122, 0x2122}, |
330 | {0x2139, 0x2139}, |
331 | {0x2194, 0x2199}, |
332 | {0x21A9, 0x21AA}, |
333 | {0x231A, 0x231B}, |
334 | {0x2328, 0x2328}, |
335 | {0x2388, 0x2388}, |
336 | {0x23CF, 0x23CF}, |
337 | {0x23E9, 0x23F3}, |
338 | {0x23F8, 0x23FA}, |
339 | {0x24C2, 0x24C2}, |
340 | {0x25AA, 0x25AB}, |
341 | {0x25B6, 0x25B6}, |
342 | {0x25C0, 0x25C0}, |
343 | {0x25FB, 0x25FE}, |
344 | {0x2600, 0x2605}, |
345 | {0x2607, 0x2612}, |
346 | {0x2614, 0x2685}, |
347 | {0x2690, 0x2705}, |
348 | {0x2708, 0x2712}, |
349 | {0x2714, 0x2714}, |
350 | {0x2716, 0x2716}, |
351 | {0x271D, 0x271D}, |
352 | {0x2721, 0x2721}, |
353 | {0x2728, 0x2728}, |
354 | {0x2733, 0x2734}, |
355 | {0x2744, 0x2744}, |
356 | {0x2747, 0x2747}, |
357 | {0x274C, 0x274C}, |
358 | {0x274E, 0x274E}, |
359 | {0x2753, 0x2755}, |
360 | {0x2757, 0x2757}, |
361 | {0x2763, 0x2767}, |
362 | {0x2795, 0x2797}, |
363 | {0x27A1, 0x27A1}, |
364 | {0x27B0, 0x27B0}, |
365 | {0x27BF, 0x27BF}, |
366 | {0x2934, 0x2935}, |
367 | {0x2B05, 0x2B07}, |
368 | {0x2B1B, 0x2B1C}, |
369 | {0x2B50, 0x2B50}, |
370 | {0x2B55, 0x2B55}, |
371 | {0x3030, 0x3030}, |
372 | {0x303D, 0x303D}, |
373 | {0x3297, 0x3297}, |
374 | {0x3299, 0x3299}, |
375 | {0x1F000, 0x1F0FF}, |
376 | {0x1F10D, 0x1F10F}, |
377 | {0x1F12F, 0x1F12F}, |
378 | {0x1F16C, 0x1F171}, |
379 | {0x1F17E, 0x1F17F}, |
380 | {0x1F18E, 0x1F18E}, |
381 | {0x1F191, 0x1F19A}, |
382 | {0x1F1AD, 0x1F1E5}, |
383 | {0x1F201, 0x1F20F}, |
384 | {0x1F21A, 0x1F21A}, |
385 | {0x1F22F, 0x1F22F}, |
386 | {0x1F232, 0x1F23A}, |
387 | {0x1F23C, 0x1F23F}, |
388 | {0x1F249, 0x1F3FA}, |
389 | {0x1F400, 0x1F53D}, |
390 | {0x1F546, 0x1F64F}, |
391 | {0x1F680, 0x1F6FF}, |
392 | {0x1F774, 0x1F77F}, |
393 | {0x1F7D5, 0x1F7FF}, |
394 | {0x1F80C, 0x1F80F}, |
395 | {0x1F848, 0x1F84F}, |
396 | {0x1F85A, 0x1F85F}, |
397 | {0x1F888, 0x1F88F}, |
398 | {0x1F8AE, 0x1F8FF}, |
399 | {0x1F90C, 0x1F93A}, |
400 | {0x1F93C, 0x1F945}, |
401 | {0x1F947, 0x1FAFF}, |
402 | {0x1FC00, 0x1FFFD}, |
403 | }; |
404 | |
405 | #endif /* PANGO_EMOJI_TABLE_H */ |
406 | |
407 | /* == End of generated table == */ |
408 | |