xref: /php-src/ext/mbstring/libmbfl/mbfl/eaw_table.h (revision 0b32a15e)
1 /* This file was generated by ext/mbstring/ucgendat/ucgendat.php.
2  *
3  *                     DO NOT EDIT THIS FILE!
4  *
5  * East Asian Width table
6  *
7  * Some characters in East Asian languages are intended to be displayed in a space
8  * which is roughly square. (This contrasts with others such as the Latin alphabet,
9  * which are taller than they are wide.) To display these East Asian characters
10  * properly, twice the horizontal space is used. This must be taken into account
11  * when doing things like wrapping text to a specific width.
12  *
13  * Each pair of numbers in the below table is a range of Unicode codepoints
14  * which should be displayed as double-width.
15  */
16 
17 #define FIRST_DOUBLEWIDTH_CODEPOINT 0x1100
18 
19 static const struct {
20 	int begin;
21 	int end;
22 } mbfl_eaw_table[] = {
23 	{ 0x1100, 0x115f },
24 	{ 0x231a, 0x231b },
25 	{ 0x2329, 0x232a },
26 	{ 0x23e9, 0x23ec },
27 	{ 0x23f0, 0x23f0 },
28 	{ 0x23f3, 0x23f3 },
29 	{ 0x25fd, 0x25fe },
30 	{ 0x2614, 0x2615 },
31 	{ 0x2648, 0x2653 },
32 	{ 0x267f, 0x267f },
33 	{ 0x2693, 0x2693 },
34 	{ 0x26a1, 0x26a1 },
35 	{ 0x26aa, 0x26ab },
36 	{ 0x26bd, 0x26be },
37 	{ 0x26c4, 0x26c5 },
38 	{ 0x26ce, 0x26ce },
39 	{ 0x26d4, 0x26d4 },
40 	{ 0x26ea, 0x26ea },
41 	{ 0x26f2, 0x26f3 },
42 	{ 0x26f5, 0x26f5 },
43 	{ 0x26fa, 0x26fa },
44 	{ 0x26fd, 0x26fd },
45 	{ 0x2705, 0x2705 },
46 	{ 0x270a, 0x270b },
47 	{ 0x2728, 0x2728 },
48 	{ 0x274c, 0x274c },
49 	{ 0x274e, 0x274e },
50 	{ 0x2753, 0x2755 },
51 	{ 0x2757, 0x2757 },
52 	{ 0x2795, 0x2797 },
53 	{ 0x27b0, 0x27b0 },
54 	{ 0x27bf, 0x27bf },
55 	{ 0x2b1b, 0x2b1c },
56 	{ 0x2b50, 0x2b50 },
57 	{ 0x2b55, 0x2b55 },
58 	{ 0x2e80, 0x2e99 },
59 	{ 0x2e9b, 0x2ef3 },
60 	{ 0x2f00, 0x2fd5 },
61 	{ 0x2ff0, 0x2ffb },
62 	{ 0x3000, 0x303e },
63 	{ 0x3041, 0x3096 },
64 	{ 0x3099, 0x30ff },
65 	{ 0x3105, 0x312f },
66 	{ 0x3131, 0x318e },
67 	{ 0x3190, 0x31e3 },
68 	{ 0x31f0, 0x321e },
69 	{ 0x3220, 0x3247 },
70 	{ 0x3250, 0x4dbf },
71 	{ 0x4e00, 0xa48c },
72 	{ 0xa490, 0xa4c6 },
73 	{ 0xa960, 0xa97c },
74 	{ 0xac00, 0xd7a3 },
75 	{ 0xf900, 0xfaff },
76 	{ 0xfe10, 0xfe19 },
77 	{ 0xfe30, 0xfe52 },
78 	{ 0xfe54, 0xfe66 },
79 	{ 0xfe68, 0xfe6b },
80 	{ 0xff01, 0xff60 },
81 	{ 0xffe0, 0xffe6 },
82 	{ 0x16fe0, 0x16fe4 },
83 	{ 0x16ff0, 0x16ff1 },
84 	{ 0x17000, 0x187f7 },
85 	{ 0x18800, 0x18cd5 },
86 	{ 0x18d00, 0x18d08 },
87 	{ 0x1aff0, 0x1aff3 },
88 	{ 0x1aff5, 0x1affb },
89 	{ 0x1affd, 0x1affe },
90 	{ 0x1b000, 0x1b122 },
91 	{ 0x1b150, 0x1b152 },
92 	{ 0x1b164, 0x1b167 },
93 	{ 0x1b170, 0x1b2fb },
94 	{ 0x1f004, 0x1f004 },
95 	{ 0x1f0cf, 0x1f0cf },
96 	{ 0x1f18e, 0x1f18e },
97 	{ 0x1f191, 0x1f19a },
98 	{ 0x1f200, 0x1f202 },
99 	{ 0x1f210, 0x1f23b },
100 	{ 0x1f240, 0x1f248 },
101 	{ 0x1f250, 0x1f251 },
102 	{ 0x1f260, 0x1f265 },
103 	{ 0x1f300, 0x1f320 },
104 	{ 0x1f32d, 0x1f335 },
105 	{ 0x1f337, 0x1f37c },
106 	{ 0x1f37e, 0x1f393 },
107 	{ 0x1f3a0, 0x1f3ca },
108 	{ 0x1f3cf, 0x1f3d3 },
109 	{ 0x1f3e0, 0x1f3f0 },
110 	{ 0x1f3f4, 0x1f3f4 },
111 	{ 0x1f3f8, 0x1f43e },
112 	{ 0x1f440, 0x1f440 },
113 	{ 0x1f442, 0x1f4fc },
114 	{ 0x1f4ff, 0x1f53d },
115 	{ 0x1f54b, 0x1f54e },
116 	{ 0x1f550, 0x1f567 },
117 	{ 0x1f57a, 0x1f57a },
118 	{ 0x1f595, 0x1f596 },
119 	{ 0x1f5a4, 0x1f5a4 },
120 	{ 0x1f5fb, 0x1f64f },
121 	{ 0x1f680, 0x1f6c5 },
122 	{ 0x1f6cc, 0x1f6cc },
123 	{ 0x1f6d0, 0x1f6d2 },
124 	{ 0x1f6d5, 0x1f6d7 },
125 	{ 0x1f6dd, 0x1f6df },
126 	{ 0x1f6eb, 0x1f6ec },
127 	{ 0x1f6f4, 0x1f6fc },
128 	{ 0x1f7e0, 0x1f7eb },
129 	{ 0x1f7f0, 0x1f7f0 },
130 	{ 0x1f90c, 0x1f93a },
131 	{ 0x1f93c, 0x1f945 },
132 	{ 0x1f947, 0x1f9ff },
133 	{ 0x1fa70, 0x1fa74 },
134 	{ 0x1fa78, 0x1fa7c },
135 	{ 0x1fa80, 0x1fa86 },
136 	{ 0x1fa90, 0x1faac },
137 	{ 0x1fab0, 0x1faba },
138 	{ 0x1fac0, 0x1fac5 },
139 	{ 0x1fad0, 0x1fad9 },
140 	{ 0x1fae0, 0x1fae7 },
141 	{ 0x1faf0, 0x1faf6 },
142 	{ 0x20000, 0x2fffd },
143 	{ 0x30000, 0x3fffd },
144 };
145