This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
utf8.c: Modify doc comment; change whitespace
[perl5.git] / lib / unicore / ArabicShaping.txt
1 # ArabicShaping-5.2.0.txt
2 # Date: 2009-08-17, 11:11:00 PDT [KW]
3 #
4 # This file is a normative contributory data file in the
5 # Unicode Character Database.
6 #
7 # Copyright (c) 1991-2009 Unicode, Inc.
8 # For terms of use, see http://www.unicode.org/terms_of_use.html
9 #
10 # This file defines the shaping classes for Arabic, Syriac, and N'Ko
11 # positional shaping, repeating in machine readable form the
12 # information exemplified in Tables 8-3, 8-7, 8-8, 8-11, 8-12,
13 # 8-13, and 13-5 of The Unicode Standard, Version 5.2.
14 #
15 # See sections 8.2, 8.3, and 13.5 of The Unicode Standard, Version 5.2
16 # for more information.
17 #
18 # Each line contains four fields, separated by a semicolon.
19 #
20 # Field 0: the code point, in 4-digit hexadecimal
21 #   form, of an Arabic, Syriac, or N'Ko character.
22 #
23 # Field 1: gives a short schematic name for that character,
24 #   abbreviated from the normative Unicode character name.
25 #
26 # Field 2: defines the joining type (property name: Joining_Type)
27 #   R Right_Joining
28 #   L Left_Joining
29 #   D Dual_Joining
30 #   C Join_Causing
31 #   U Non_Joining
32 #   T Transparent
33 #     See Section 8.2, Arabic for more information on these types.
34 #
35 # Field 3: defines the joining group (property name: Joining_Group)
36 #
37 # The values of the joining group are based schematically on character
38 # names. Where a schematic character name consists of two or more parts separated
39 # by spaces, the formal Joining_Group property value, as specified in
40 # PropertyValueAliases.txt, consists of the same name parts joined by
41 # underscores. Hence, the entry:
42 #
43 #   0629; TEH MARBUTA; R; TEH MARBUTA
44 #
45 # corresponds to [Joining_Group = Teh_Marbuta].
46 #
47 # Note: For historical reasons, the property value [Joining_Group = Hamza_On_Heh_Goal]
48 #   is anachronistically named. It used to apply to both of the following characters
49 #   in earlier versions of the standard:
50 #
51 #   U+06C2 ARABIC LETTER HEH GOAL WITH HAMZA ABOVE
52 #   U+06C3 ARABIC LETTER TEH MARBUTA GOAL
53 #
54 #   However, it currently applies only to U+06C3, and *not* to U+06C2.
55 #   To avoid destabilizing existing Joining_Group property aliases, the
56 #   value Hamza_On_Heh_Goal has not been changed, despite the fact that it
57 #   no longer applies to Hamza On Heh Goal, but only to Teh Marbuta Goal.
58 #
59 # When other cursive scripts are added to the Unicode Standard in
60 # the future, the joining group value of all its letters will default
61 # to jg=No_Joining_Group in this data file. Other, more specific
62 # joining group values will be defined only if an explicit proposal
63 # to define those values exactly has been approved by the UTC. This
64 # is the convention exemplified by the N'Ko script. Only the Arabic
65 # and Syriac scripts currently have explicit joining group values defined.
66 #
67 # Note: Code points that are not explicitly listed in this file are
68 # either of joining type T or U:
69 #
70 # - Those that not explicitly listed that are of General Category Mn, Me, or Cf
71 #   have joining type T.
72 # - All others not explicitly listed have joining type U.
73 #
74 # For an explicit listing of characters of joining type T, see
75 # the derived property file DerivedJoiningType.txt.
76 #
77 # There are currently no characters of joining type L defined in Unicode.
78 #
79 # #############################################################
80  
81 # Unicode; Schematic Name; Joining Type; Joining Group
82
83 # Arabic characters
84
85 0600; ARABIC NUMBER SIGN; U; No_Joining_Group
86 0601; ARABIC SIGN SANAH; U; No_Joining_Group
87 0602; ARABIC FOOTNOTE MARKER; U; No_Joining_Group
88 0603; ARABIC SIGN SAFHA; U; No_Joining_Group
89 0608; ARABIC RAY; U; No_Joining_Group
90 060B; AFGHANI SIGN; U; No_Joining_Group
91 0621; HAMZA; U; No_Joining_Group
92 0622; MADDA ON ALEF; R; ALEF
93 0623; HAMZA ON ALEF; R; ALEF
94 0624; HAMZA ON WAW; R; WAW
95 0625; HAMZA UNDER ALEF; R; ALEF
96 0626; HAMZA ON YEH; D; YEH
97 0627; ALEF; R; ALEF
98 0628; BEH; D; BEH
99 0629; TEH MARBUTA; R; TEH MARBUTA
100 062A; TEH; D; BEH
101 062B; THEH; D; BEH
102 062C; JEEM; D; HAH
103 062D; HAH; D; HAH
104 062E; KHAH; D; HAH
105 062F; DAL; R; DAL
106 0630; THAL; R; DAL
107 0631; REH; R; REH
108 0632; ZAIN; R; REH
109 0633; SEEN; D; SEEN
110 0634; SHEEN; D; SEEN
111 0635; SAD; D; SAD
112 0636; DAD; D; SAD
113 0637; TAH; D; TAH
114 0638; ZAH; D; TAH
115 0639; AIN; D; AIN
116 063A; GHAIN; D; AIN
117 063B; KEHEH WITH 2 DOTS ABOVE; D; GAF
118 063C; KEHEH WITH 3 DOTS BELOW; D; GAF 
119 063D; FARSI YEH WITH INVERTED V; D; FARSI YEH
120 063E; FARSI YEH WITH 2 DOTS ABOVE; D; FARSI YEH
121 063F; FARSI YEH WITH 3 DOTS ABOVE; D; FARSI YEH
122 0640; TATWEEL; C; No_Joining_Group
123 0641; FEH; D; FEH
124 0642; QAF; D; QAF
125 0643; KAF; D; KAF
126 0644; LAM; D; LAM
127 0645; MEEM; D; MEEM
128 0646; NOON; D; NOON
129 0647; HEH; D; HEH
130 0648; WAW; R; WAW
131 0649; ALEF MAKSURA; D; YEH
132 064A; YEH; D; YEH
133 066E; DOTLESS BEH; D; BEH
134 066F; DOTLESS QAF; D; QAF
135 0671; HAMZAT WASL ON ALEF; R; ALEF
136 0672; WAVY HAMZA ON ALEF; R; ALEF
137 0673; WAVY HAMZA UNDER ALEF; R; ALEF
138 0674; HIGH HAMZA; U; No_Joining_Group
139 0675; HIGH HAMZA ALEF; R; ALEF
140 0676; HIGH HAMZA WAW; R; WAW
141 0677; HIGH HAMZA WAW WITH DAMMA; R; WAW
142 0678; HIGH HAMZA YEH; D; YEH
143 0679; TEH WITH SMALL TAH; D; BEH
144 067A; TEH WITH 2 DOTS VERTICAL ABOVE; D; BEH
145 067B; BEH WITH 2 DOTS VERTICAL BELOW; D; BEH
146 067C; TEH WITH RING; D; BEH
147 067D; TEH WITH 3 DOTS ABOVE DOWNWARD; D; BEH
148 067E; TEH WITH 3 DOTS BELOW; D; BEH
149 067F; TEH WITH 4 DOTS ABOVE; D; BEH
150 0680; BEH WITH 4 DOTS BELOW; D; BEH
151 0681; HAMZA ON HAH; D; HAH
152 0682; HAH WITH 2 DOTS VERTICAL ABOVE; D; HAH
153 0683; HAH WITH MIDDLE 2 DOTS; D; HAH
154 0684; HAH WITH MIDDLE 2 DOTS VERTICAL; D; HAH
155 0685; HAH WITH 3 DOTS ABOVE; D; HAH
156 0686; HAH WITH MIDDLE 3 DOTS DOWNWARD; D; HAH
157 0687; HAH WITH MIDDLE 4 DOTS; D; HAH
158 0688; DAL WITH SMALL TAH; R; DAL
159 0689; DAL WITH RING; R; DAL
160 068A; DAL WITH DOT BELOW; R; DAL
161 068B; DAL WITH DOT BELOW AND SMALL TAH; R; DAL
162 068C; DAL WITH 2 DOTS ABOVE; R; DAL
163 068D; DAL WITH 2 DOTS BELOW; R; DAL
164 068E; DAL WITH 3 DOTS ABOVE; R; DAL
165 068F; DAL WITH 3 DOTS ABOVE DOWNWARD; R; DAL
166 0690; DAL WITH 4 DOTS ABOVE; R; DAL
167 0691; REH WITH SMALL TAH; R; REH
168 0692; REH WITH SMALL V; R; REH
169 0693; REH WITH RING; R; REH
170 0694; REH WITH DOT BELOW; R; REH
171 0695; REH WITH SMALL V BELOW; R; REH
172 0696; REH WITH DOT BELOW AND DOT ABOVE; R; REH
173 0697; REH WITH 2 DOTS ABOVE; R; REH
174 0698; REH WITH 3 DOTS ABOVE; R; REH
175 0699; REH WITH 4 DOTS ABOVE; R; REH
176 069A; SEEN WITH DOT BELOW AND DOT ABOVE; D; SEEN
177 069B; SEEN WITH 3 DOTS BELOW; D; SEEN
178 069C; SEEN WITH 3 DOTS BELOW AND 3 DOTS ABOVE; D; SEEN
179 069D; SAD WITH 2 DOTS BELOW; D; SAD
180 069E; SAD WITH 3 DOTS ABOVE; D; SAD
181 069F; TAH WITH 3 DOTS ABOVE; D; TAH
182 06A0; AIN WITH 3 DOTS ABOVE; D; AIN
183 06A1; DOTLESS FEH; D; FEH
184 06A2; FEH WITH DOT MOVED BELOW; D; FEH
185 06A3; FEH WITH DOT BELOW; D; FEH
186 06A4; FEH WITH 3 DOTS ABOVE; D; FEH
187 06A5; FEH WITH 3 DOTS BELOW; D; FEH
188 06A6; FEH WITH 4 DOTS ABOVE; D; FEH
189 06A7; QAF WITH DOT ABOVE; D; QAF
190 06A8; QAF WITH 3 DOTS ABOVE; D; QAF
191 06A9; KEHEH; D; GAF
192 06AA; SWASH KAF; D; SWASH KAF
193 06AB; KAF WITH RING; D; GAF
194 06AC; KAF WITH DOT ABOVE; D; KAF
195 06AD; KAF WITH 3 DOTS ABOVE; D; KAF
196 06AE; KAF WITH 3 DOTS BELOW; D; KAF
197 06AF; GAF; D; GAF
198 06B0; GAF WITH RING; D; GAF
199 06B1; GAF WITH 2 DOTS ABOVE; D; GAF
200 06B2; GAF WITH 2 DOTS BELOW; D; GAF
201 06B3; GAF WITH 2 DOTS VERTICAL BELOW; D; GAF
202 06B4; GAF WITH 3 DOTS ABOVE; D; GAF
203 06B5; LAM WITH SMALL V; D; LAM
204 06B6; LAM WITH DOT ABOVE; D; LAM
205 06B7; LAM WITH 3 DOTS ABOVE; D; LAM
206 06B8; LAM WITH 3 DOTS BELOW; D; LAM
207 06B9; NOON WITH DOT BELOW; D; NOON
208 06BA; DOTLESS NOON; D; NOON
209 06BB; DOTLESS NOON WITH SMALL TAH; D; NOON
210 06BC; NOON WITH RING; D; NOON
211 06BD; NYA; D; NYA
212 06BE; KNOTTED HEH; D; KNOTTED HEH
213 06BF; HAH WITH MIDDLE 3 DOTS DOWNWARD AND DOT ABOVE; D; HAH
214 06C0; HAMZA ON HEH; R; TEH MARBUTA
215 06C1; HEH GOAL; D; HEH GOAL
216 06C2; HAMZA ON HEH GOAL; D; HEH GOAL
217 06C3; TEH MARBUTA GOAL; R; HAMZA ON HEH GOAL
218 06C4; WAW WITH RING; R; WAW
219 06C5; WAW WITH BAR; R; WAW
220 06C6; WAW WITH SMALL V; R; WAW
221 06C7; WAW WITH DAMMA; R; WAW
222 06C8; WAW WITH ALEF ABOVE; R; WAW
223 06C9; WAW WITH INVERTED SMALL V; R; WAW
224 06CA; WAW WITH 2 DOTS ABOVE; R; WAW
225 06CB; WAW WITH 3 DOTS ABOVE; R; WAW
226 06CC; FARSI YEH; D; FARSI YEH
227 06CD; YEH WITH TAIL; R; YEH WITH TAIL
228 06CE; FARSI YEH WITH SMALL V; D; FARSI YEH
229 06CF; WAW WITH DOT ABOVE; R; WAW
230 06D0; YEH WITH 2 DOTS VERTICAL BELOW; D; YEH
231 06D1; YEH WITH 3 DOTS BELOW; D; YEH
232 06D2; YEH BARREE; R; YEH BARREE
233 06D3; HAMZA ON YEH BARREE; R; YEH BARREE
234 06D5; AE; R; TEH MARBUTA
235 06DD; ARABIC END OF AYAH; U; No_Joining_Group
236 06EE; DAL WITH INVERTED V; R; DAL
237 06EF; REH WITH INVERTED V; R; REH
238 06FA; SEEN WITH DOT BELOW AND 3 DOTS ABOVE; D; SEEN
239 06FB; DAD WITH DOT BELOW; D; SAD
240 06FC; GHAIN WITH DOT BELOW; D; AIN
241 06FF; HEH WITH INVERTED V; D; KNOTTED HEH
242
243 # Syriac characters
244
245 0710; ALAPH; R; ALAPH
246 0712; BETH; D; BETH
247 0713; GAMAL; D; GAMAL
248 0714; GAMAL GARSHUNI; D; GAMAL
249 0715; DALATH; R; DALATH RISH
250 0716; DOTLESS DALATH RISH; R; DALATH RISH
251 0717; HE; R; HE
252 0718; WAW; R; SYRIAC WAW
253 0719; ZAIN; R; ZAIN
254 071A; HETH; D; HETH
255 071B; TETH; D; TETH
256 071C; TETH GARSHUNI; D; TETH
257 071D; YUDH; D; YUDH
258 071E; YUDH HE; R; YUDH HE
259 071F; KAPH; D; KAPH
260 0720; LAMADH; D; LAMADH
261 0721; MIM; D; MIM
262 0722; NUN; D; NUN
263 0723; SEMKATH; D; SEMKATH
264 0724; FINAL SEMKATH; D; FINAL SEMKATH
265 0725; E; D; E
266 0726; PE; D; PE
267 0727; REVERSED PE; D; REVERSED PE
268 0728; SADHE; R; SADHE
269 0729; QAPH; D; QAPH
270 072A; RISH; R; DALATH RISH
271 072B; SHIN; D; SHIN
272 072C; TAW; R; TAW
273 072D; PERSIAN BHETH; D; BETH
274 072E; PERSIAN GHAMAL; D; GAMAL
275 072F; PERSIAN DHALATH; R; DALATH RISH
276 074D; SOGDIAN ZHAIN; R; ZHAIN
277 074E; SOGDIAN KHAPH; D; KHAPH
278 074F; SOGDIAN FE; D; FE
279
280 # Arabic supplement characters
281
282 0750; BEH WITH 3 DOTS HORIZONTALLY BELOW; D; BEH
283 0751; BEH WITH DOT BELOW AND 3 DOTS ABOVE; D; BEH
284 0752; BEH WITH 3 DOTS POINTING UPWARDS BELOW; D; BEH
285 0753; BEH WITH 3 DOTS POINTING UPWARDS BELOW AND 2 DOTS ABOVE; D; BEH
286 0754; BEH WITH 2 DOTS BELOW AND DOT ABOVE; D; BEH
287 0755; BEH WITH INVERTED SMALL V BELOW; D; BEH
288 0756; BEH WITH SMALL V; D; BEH
289 0757; HAH WITH 2 DOTS ABOVE; D; HAH
290 0758; HAH WITH 3 DOTS POINTING UPWARDS BELOW; D; HAH
291 0759; DAL WITH 2 DOTS VERTICALLY BELOW AND SMALL TAH; R; DAL
292 075A; DAL WITH INVERTED SMALL V BELOW; R; DAL
293 075B; REH WITH STROKE; R; REH
294 075C; SEEN WITH 4 DOTS ABOVE; D; SEEN
295 075D; AIN WITH 2 DOTS ABOVE; D; AIN
296 075E; AIN WITH 3 DOTS POINTING DOWNWARDS ABOVE; D; AIN
297 075F; AIN WITH 2 DOTS VERTICALLY ABOVE; D; AIN
298 0760; FEH WITH 2 DOTS BELOW; D; FEH
299 0761; FEH WITH 3 DOTS POINTING UPWARDS BELOW; D; FEH
300 0762; KEHEH WITH DOT ABOVE; D; GAF
301 0763; KEHEH WITH 3 DOTS ABOVE; D; GAF
302 0764; KEHEH WITH 3 DOTS POINTING UPWARDS BELOW; D; GAF
303 0765; MEEM WITH DOT ABOVE; D; MEEM
304 0766; MEEM WITH DOT BELOW; D; MEEM
305 0767; NOON WITH 2 DOTS BELOW; D; NOON
306 0768; NOON WITH SMALL TAH; D; NOON
307 0769; NOON WITH SMALL V; D; NOON
308 076A; LAM WITH BAR; D; LAM
309 076B; REH WITH 2 DOTS VERTICALLY ABOVE; R; REH
310 076C; REH WITH HAMZA ABOVE; R; REH
311 076D; SEEN WITH 2 DOTS VERTICALLY ABOVE; D; SEEN
312 076E; HAH WITH SMALL TAH BELOW; D; HAH
313 076F; HAH WITH SMALL TAH AND 2 DOTS; D; HAH
314 0770; SEEN WITH SMALL TAH AND 2 DOTS; D; SEEN
315 0771; REH WITH SMALL TAH AND 2 DOTS; R; REH
316 0772; HAH WITH SMALL TAH ABOVE; D; HAH
317 0773; ALEF WITH DIGIT TWO ABOVE; R; ALEF
318 0774; ALEF WITH DIGIT THREE ABOVE; R; ALEF
319 0775; FARSI YEH WITH DIGIT TWO ABOVE; D; FARSI YEH
320 0776; FARSI YEH WITH DIGIT THREE ABOVE; D; FARSI YEH
321 0777; YEH WITH DIGIT FOUR BELOW; D; YEH
322 0778; WAW WITH DIGIT TWO ABOVE; R; WAW
323 0779; WAW WITH DIGIT THREE ABOVE; R; WAW
324 077A; YEH BARREE WITH DIGIT TWO ABOVE; D; BURUSHASKI YEH BARREE
325 077B; YEH BARREE WITH DIGIT THREE ABOVE; D; BURUSHASKI YEH BARREE
326 077C; HAH WITH DIGIT FOUR BELOW; D; HAH
327 077D; SEEN WITH DIGIT FOUR ABOVE; D; SEEN
328 077E; SEEN WITH INVERTED V; D; SEEN
329 077F; KAF WITH 2 DOTS ABOVE; D; KAF
330
331 # N'Ko Characters
332
333 07CA; NKO A; D; No_Joining_Group
334 07CB; NKO EE; D; No_Joining_Group
335 07CC; NKO I; D; No_Joining_Group
336 07CD; NKO E; D; No_Joining_Group
337 07CE; NKO U; D; No_Joining_Group
338 07CF; NKO OO; D; No_Joining_Group
339 07D0; NKO O; D; No_Joining_Group
340 07D1; NKO DAGBASINNA; D; No_Joining_Group
341 07D2; NKO N; D; No_Joining_Group
342 07D3; NKO BA; D; No_Joining_Group
343 07D4; NKO PA; D; No_Joining_Group
344 07D5; NKO TA; D; No_Joining_Group
345 07D6; NKO JA; D; No_Joining_Group
346 07D7; NKO CHA; D; No_Joining_Group
347 07D8; NKO DA; D; No_Joining_Group
348 07D9; NKO RA; D; No_Joining_Group
349 07DA; NKO RRA; D; No_Joining_Group
350 07DB; NKO SA; D; No_Joining_Group
351 07DC; NKO GBA; D; No_Joining_Group
352 07DD; NKO FA; D; No_Joining_Group
353 07DE; NKO KA; D; No_Joining_Group
354 07DF; NKO LA; D; No_Joining_Group
355 07E0; NKO NA WOLOSO; D; No_Joining_Group
356 07E1; NKO MA; D; No_Joining_Group
357 07E2; NKO NYA; D; No_Joining_Group
358 07E3; NKO NA; D; No_Joining_Group
359 07E4; NKO HA; D; No_Joining_Group
360 07E5; NKO WA; D; No_Joining_Group
361 07E6; NKO YA; D; No_Joining_Group
362 07E7; NKO NYA WOLOSO; D; No_Joining_Group
363 07E8; NKO JONA JA; D; No_Joining_Group
364 07E9; NKO JONA CHA; D; No_Joining_Group
365 07EA; NKO JONA RA; D; No_Joining_Group
366 07FA; NKO LAJANYALAN; C; No_Joining_Group
367
368 # Other
369
370 200C; ZERO WIDTH NON-JOINER; U; No_Joining_Group
371 200D; ZERO WIDTH JOINER; C; No_Joining_Group
372
373 # EOF