Skip to content

Commit 636879e

Browse files
committed
Add Unicode 17
1 parent d03bce2 commit 636879e

24 files changed

+100603
-588
lines changed

data/17.0.0-bidi-brackets.txt

Lines changed: 193 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,193 @@
1+
# BidiBrackets-17.0.0.txt
2+
# Date: 2025-08-01
3+
# © 2025 Unicode®, Inc.
4+
# Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries.
5+
# For terms of use and license, see https://www.unicode.org/terms_of_use.html
6+
#
7+
# Unicode Character Database
8+
# For documentation, see https://www.unicode.org/reports/tr44/
9+
#
10+
# Bidi_Paired_Bracket and Bidi_Paired_Bracket_Type Properties
11+
#
12+
# This file is a normative contributory data file in the Unicode
13+
# Character Database.
14+
#
15+
# Bidi_Paired_Bracket is a normative property
16+
# which establishes a mapping between characters that are treated as
17+
# bracket pairs by the Unicode Bidirectional Algorithm.
18+
#
19+
# Bidi_Paired_Bracket_Type is a normative property
20+
# which classifies characters into opening and closing paired brackets
21+
# for the purposes of the Unicode Bidirectional Algorithm.
22+
#
23+
# This file lists the set of code points with Bidi_Paired_Bracket_Type
24+
# property values Open and Close. The set is derived from the character
25+
# properties General_Category (gc), Bidi_Class (bc), Bidi_Mirrored (Bidi_M),
26+
# and Bidi_Mirroring_Glyph (bmg), as follows: two characters, A and B,
27+
# form a bracket pair if A has gc=Ps and B has gc=Pe, both have bc=ON and
28+
# Bidi_M=Y, and bmg of A is B. Bidi_Paired_Bracket (bpb) maps A to B and
29+
# vice versa, and their Bidi_Paired_Bracket_Type (bpt) property values are
30+
# Open (o) and Close (c), respectively.
31+
#
32+
# The brackets with ticks U+298D LEFT SQUARE BRACKET WITH TICK IN TOP CORNER
33+
# through U+2990 RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER are paired the
34+
# same way their glyphs form mirror pairs, according to their bmg property
35+
# values. They are not paired on the basis of a diagonal or antidiagonal
36+
# matching of the corner ticks inferred from code point order.
37+
#
38+
# For legacy reasons, the characters U+FD3E ORNATE LEFT PARENTHESIS and
39+
# U+FD3F ORNATE RIGHT PARENTHESIS do not mirror in bidirectional display
40+
# and therefore do not form a bracket pair.
41+
#
42+
# The Unicode property value stability policy guarantees that characters
43+
# which have bpt=o or bpt=c also have bc=ON and Bidi_M=Y. As a result, an
44+
# implementation can optimize the lookup of the Bidi_Paired_Bracket_Type
45+
# property values Open and Close by restricting the processing to characters
46+
# with bc=ON.
47+
#
48+
# The format of the file is three fields separated by a semicolon.
49+
# Field 0: Unicode code point value, represented as a hexadecimal value
50+
# Field 1: Bidi_Paired_Bracket property value, a code point value or <none>
51+
# Field 2: Bidi_Paired_Bracket_Type property value, one of the following:
52+
# o Open
53+
# c Close
54+
# n None
55+
# The names of the characters in field 0 are given in comments at the end
56+
# of each line.
57+
#
58+
# For information on bidirectional paired brackets, see UAX #9: Unicode
59+
# Bidirectional Algorithm, at https://www.unicode.org/reports/tr9/
60+
#
61+
# This file was originally created by Andrew Glass and Laurentiu Iancu
62+
# for Unicode 6.3.
63+
64+
0028; 0029; o # LEFT PARENTHESIS
65+
0029; 0028; c # RIGHT PARENTHESIS
66+
005B; 005D; o # LEFT SQUARE BRACKET
67+
005D; 005B; c # RIGHT SQUARE BRACKET
68+
007B; 007D; o # LEFT CURLY BRACKET
69+
007D; 007B; c # RIGHT CURLY BRACKET
70+
0F3A; 0F3B; o # TIBETAN MARK GUG RTAGS GYON
71+
0F3B; 0F3A; c # TIBETAN MARK GUG RTAGS GYAS
72+
0F3C; 0F3D; o # TIBETAN MARK ANG KHANG GYON
73+
0F3D; 0F3C; c # TIBETAN MARK ANG KHANG GYAS
74+
169B; 169C; o # OGHAM FEATHER MARK
75+
169C; 169B; c # OGHAM REVERSED FEATHER MARK
76+
2045; 2046; o # LEFT SQUARE BRACKET WITH QUILL
77+
2046; 2045; c # RIGHT SQUARE BRACKET WITH QUILL
78+
207D; 207E; o # SUPERSCRIPT LEFT PARENTHESIS
79+
207E; 207D; c # SUPERSCRIPT RIGHT PARENTHESIS
80+
208D; 208E; o # SUBSCRIPT LEFT PARENTHESIS
81+
208E; 208D; c # SUBSCRIPT RIGHT PARENTHESIS
82+
2308; 2309; o # LEFT CEILING
83+
2309; 2308; c # RIGHT CEILING
84+
230A; 230B; o # LEFT FLOOR
85+
230B; 230A; c # RIGHT FLOOR
86+
2329; 232A; o # LEFT-POINTING ANGLE BRACKET
87+
232A; 2329; c # RIGHT-POINTING ANGLE BRACKET
88+
2768; 2769; o # MEDIUM LEFT PARENTHESIS ORNAMENT
89+
2769; 2768; c # MEDIUM RIGHT PARENTHESIS ORNAMENT
90+
276A; 276B; o # MEDIUM FLATTENED LEFT PARENTHESIS ORNAMENT
91+
276B; 276A; c # MEDIUM FLATTENED RIGHT PARENTHESIS ORNAMENT
92+
276C; 276D; o # MEDIUM LEFT-POINTING ANGLE BRACKET ORNAMENT
93+
276D; 276C; c # MEDIUM RIGHT-POINTING ANGLE BRACKET ORNAMENT
94+
276E; 276F; o # HEAVY LEFT-POINTING ANGLE QUOTATION MARK ORNAMENT
95+
276F; 276E; c # HEAVY RIGHT-POINTING ANGLE QUOTATION MARK ORNAMENT
96+
2770; 2771; o # HEAVY LEFT-POINTING ANGLE BRACKET ORNAMENT
97+
2771; 2770; c # HEAVY RIGHT-POINTING ANGLE BRACKET ORNAMENT
98+
2772; 2773; o # LIGHT LEFT TORTOISE SHELL BRACKET ORNAMENT
99+
2773; 2772; c # LIGHT RIGHT TORTOISE SHELL BRACKET ORNAMENT
100+
2774; 2775; o # MEDIUM LEFT CURLY BRACKET ORNAMENT
101+
2775; 2774; c # MEDIUM RIGHT CURLY BRACKET ORNAMENT
102+
27C5; 27C6; o # LEFT S-SHAPED BAG DELIMITER
103+
27C6; 27C5; c # RIGHT S-SHAPED BAG DELIMITER
104+
27E6; 27E7; o # MATHEMATICAL LEFT WHITE SQUARE BRACKET
105+
27E7; 27E6; c # MATHEMATICAL RIGHT WHITE SQUARE BRACKET
106+
27E8; 27E9; o # MATHEMATICAL LEFT ANGLE BRACKET
107+
27E9; 27E8; c # MATHEMATICAL RIGHT ANGLE BRACKET
108+
27EA; 27EB; o # MATHEMATICAL LEFT DOUBLE ANGLE BRACKET
109+
27EB; 27EA; c # MATHEMATICAL RIGHT DOUBLE ANGLE BRACKET
110+
27EC; 27ED; o # MATHEMATICAL LEFT WHITE TORTOISE SHELL BRACKET
111+
27ED; 27EC; c # MATHEMATICAL RIGHT WHITE TORTOISE SHELL BRACKET
112+
27EE; 27EF; o # MATHEMATICAL LEFT FLATTENED PARENTHESIS
113+
27EF; 27EE; c # MATHEMATICAL RIGHT FLATTENED PARENTHESIS
114+
2983; 2984; o # LEFT WHITE CURLY BRACKET
115+
2984; 2983; c # RIGHT WHITE CURLY BRACKET
116+
2985; 2986; o # LEFT WHITE PARENTHESIS
117+
2986; 2985; c # RIGHT WHITE PARENTHESIS
118+
2987; 2988; o # Z NOTATION LEFT IMAGE BRACKET
119+
2988; 2987; c # Z NOTATION RIGHT IMAGE BRACKET
120+
2989; 298A; o # Z NOTATION LEFT BINDING BRACKET
121+
298A; 2989; c # Z NOTATION RIGHT BINDING BRACKET
122+
298B; 298C; o # LEFT SQUARE BRACKET WITH UNDERBAR
123+
298C; 298B; c # RIGHT SQUARE BRACKET WITH UNDERBAR
124+
298D; 2990; o # LEFT SQUARE BRACKET WITH TICK IN TOP CORNER
125+
298E; 298F; c # RIGHT SQUARE BRACKET WITH TICK IN BOTTOM CORNER
126+
298F; 298E; o # LEFT SQUARE BRACKET WITH TICK IN BOTTOM CORNER
127+
2990; 298D; c # RIGHT SQUARE BRACKET WITH TICK IN TOP CORNER
128+
2991; 2992; o # LEFT ANGLE BRACKET WITH DOT
129+
2992; 2991; c # RIGHT ANGLE BRACKET WITH DOT
130+
2993; 2994; o # LEFT ARC LESS-THAN BRACKET
131+
2994; 2993; c # RIGHT ARC GREATER-THAN BRACKET
132+
2995; 2996; o # DOUBLE LEFT ARC GREATER-THAN BRACKET
133+
2996; 2995; c # DOUBLE RIGHT ARC LESS-THAN BRACKET
134+
2997; 2998; o # LEFT BLACK TORTOISE SHELL BRACKET
135+
2998; 2997; c # RIGHT BLACK TORTOISE SHELL BRACKET
136+
29D8; 29D9; o # LEFT WIGGLY FENCE
137+
29D9; 29D8; c # RIGHT WIGGLY FENCE
138+
29DA; 29DB; o # LEFT DOUBLE WIGGLY FENCE
139+
29DB; 29DA; c # RIGHT DOUBLE WIGGLY FENCE
140+
29FC; 29FD; o # LEFT-POINTING CURVED ANGLE BRACKET
141+
29FD; 29FC; c # RIGHT-POINTING CURVED ANGLE BRACKET
142+
2E22; 2E23; o # TOP LEFT HALF BRACKET
143+
2E23; 2E22; c # TOP RIGHT HALF BRACKET
144+
2E24; 2E25; o # BOTTOM LEFT HALF BRACKET
145+
2E25; 2E24; c # BOTTOM RIGHT HALF BRACKET
146+
2E26; 2E27; o # LEFT SIDEWAYS U BRACKET
147+
2E27; 2E26; c # RIGHT SIDEWAYS U BRACKET
148+
2E28; 2E29; o # LEFT DOUBLE PARENTHESIS
149+
2E29; 2E28; c # RIGHT DOUBLE PARENTHESIS
150+
2E55; 2E56; o # LEFT SQUARE BRACKET WITH STROKE
151+
2E56; 2E55; c # RIGHT SQUARE BRACKET WITH STROKE
152+
2E57; 2E58; o # LEFT SQUARE BRACKET WITH DOUBLE STROKE
153+
2E58; 2E57; c # RIGHT SQUARE BRACKET WITH DOUBLE STROKE
154+
2E59; 2E5A; o # TOP HALF LEFT PARENTHESIS
155+
2E5A; 2E59; c # TOP HALF RIGHT PARENTHESIS
156+
2E5B; 2E5C; o # BOTTOM HALF LEFT PARENTHESIS
157+
2E5C; 2E5B; c # BOTTOM HALF RIGHT PARENTHESIS
158+
3008; 3009; o # LEFT ANGLE BRACKET
159+
3009; 3008; c # RIGHT ANGLE BRACKET
160+
300A; 300B; o # LEFT DOUBLE ANGLE BRACKET
161+
300B; 300A; c # RIGHT DOUBLE ANGLE BRACKET
162+
300C; 300D; o # LEFT CORNER BRACKET
163+
300D; 300C; c # RIGHT CORNER BRACKET
164+
300E; 300F; o # LEFT WHITE CORNER BRACKET
165+
300F; 300E; c # RIGHT WHITE CORNER BRACKET
166+
3010; 3011; o # LEFT BLACK LENTICULAR BRACKET
167+
3011; 3010; c # RIGHT BLACK LENTICULAR BRACKET
168+
3014; 3015; o # LEFT TORTOISE SHELL BRACKET
169+
3015; 3014; c # RIGHT TORTOISE SHELL BRACKET
170+
3016; 3017; o # LEFT WHITE LENTICULAR BRACKET
171+
3017; 3016; c # RIGHT WHITE LENTICULAR BRACKET
172+
3018; 3019; o # LEFT WHITE TORTOISE SHELL BRACKET
173+
3019; 3018; c # RIGHT WHITE TORTOISE SHELL BRACKET
174+
301A; 301B; o # LEFT WHITE SQUARE BRACKET
175+
301B; 301A; c # RIGHT WHITE SQUARE BRACKET
176+
FE59; FE5A; o # SMALL LEFT PARENTHESIS
177+
FE5A; FE59; c # SMALL RIGHT PARENTHESIS
178+
FE5B; FE5C; o # SMALL LEFT CURLY BRACKET
179+
FE5C; FE5B; c # SMALL RIGHT CURLY BRACKET
180+
FE5D; FE5E; o # SMALL LEFT TORTOISE SHELL BRACKET
181+
FE5E; FE5D; c # SMALL RIGHT TORTOISE SHELL BRACKET
182+
FF08; FF09; o # FULLWIDTH LEFT PARENTHESIS
183+
FF09; FF08; c # FULLWIDTH RIGHT PARENTHESIS
184+
FF3B; FF3D; o # FULLWIDTH LEFT SQUARE BRACKET
185+
FF3D; FF3B; c # FULLWIDTH RIGHT SQUARE BRACKET
186+
FF5B; FF5D; o # FULLWIDTH LEFT CURLY BRACKET
187+
FF5D; FF5B; c # FULLWIDTH RIGHT CURLY BRACKET
188+
FF5F; FF60; o # FULLWIDTH LEFT WHITE PARENTHESIS
189+
FF60; FF5F; c # FULLWIDTH RIGHT WHITE PARENTHESIS
190+
FF62; FF63; o # HALFWIDTH LEFT CORNER BRACKET
191+
FF63; FF62; c # HALFWIDTH RIGHT CORNER BRACKET
192+
193+
# EOF

0 commit comments

Comments
 (0)