-
Notifications
You must be signed in to change notification settings - Fork 372
/
langtagTest.txt
370 lines (358 loc) · 6.13 KB
/
langtagTest.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
WELL-FORMED
en-GB-oed
zh-cmn-Hans
no-bok
#zh-Hans-HK-SCOUSE-a-foobar-b-x-a-en@collation=phonebook;calendar=islamic
#i-default@abc=def
#x-foobar@abc=def
#zh-Hans-HK-SCOUSE-a-foobar-x-a-en@collation=phonebook;calendar=islamic
#zh@collation=phonebook
#zh@collation=phonebook;calendar=islamic
#zh-Hans-HK-SCOUSE-a-foobar-b-en-x-a-en@collation=phonebook;calendar=islamic
AaBbCcDd
AaBbCcDd-x-y-any-x
abcd-Latn
ab-x-abc-a-a # ditto
ab-x-abc-a-a # ditto
ab-x-abc-x-abc # anything goes after x
ab-x-abc-x-abc # anything goes after x
ax-TZ # Not in the registry, but well-formed
az-Arab-x-AZE-derbend
de-a-value
de-CH-1996
de-Latg-1996
en
en-a-bbb-x-a-ccc
en-gb-oed
en-Latn
en-Latn-001
en-Latn-GB-boont-r-extended-sequence-x-private
en-Latn-US
en-Latn-US-lojban-gaulish
en-Latn-US-lojban-gaulish-a-12345678-ABCD-b-ABCDEFGH
en-Latn-US-lojban-gaulish-a-12345678-ABCD-b-ABCDEFGH-x-a-b-c-12345678
en-US
en-US
en-US-boont
en-x-US
es-419
es-Latn-CO-x-private
fr
fra
fra-FX
fra-Latn # ISO 639 can be 3-letters
fr-FR
fr-Latn
fr-Latn-419
fr-Latn-CA
fr-Latn-CA
fr-Latn-FR
fr-shadok # Variant
fr-y-myext-myext2
i-default # legacy (marked as “Type: grandfathered” in BCP 47)
i-default # legacy
i-enochian # legacy
i-klingon # legacy
i-klingon # legacy with singleton
mn-Cyrl-MN
mN-cYrL-Mn
no-bok # legacy without singleton
sl-IT-nedis
sl-nedis
sr-Latn-CS
x-12345678-a
x-fr-CH
#all of the legacy codes (marked as “Type: grandfathered” in BCP 47); first the really goofy ones.
#Cased oddly for an extra test.
En-Gb-Oed
I-Ami
I-Bnn
I-Default
I-Enochian
I-Hak
I-Klingon
I-Lux
I-Mingo
I-Navajo
I-Pwn
I-Tao
I-Tay
I-Tsu
Sgn-Be-Fr
Sgn-Be-Nl
Sgn-Ch-De
#now the ones that are well-formed, but currently invalid
art-lojban
cel-gaulish
en-boont
en-scouse
no-bok
no-nyn
zh-cmn
zh-cmn-Hans
zh-cmn-Hant
zh-gan
zh-guoyu
zh-hakka
zh-min
zh-min-nan
zh-wuu
zh-xiang
zh-yue
# the following have multiple singletons -- well formed but invalid
ab-a-abc-a-abc
en-a-bbb-a-ccc # 'a' appears twice
ab-c-abc-r-toto-c-abc # 'c' appears twice
# Now some randomly generated correct names
zszLDm-sCVS-es-x-gn762vG-83-S-mlL
IIJdFI-cfZv
kbAxSgJ-685
tbutP
hDL-595
dUf-iUjq-0hJ4P-5YkF-WD8fk
FZAABA-FH
xZ-lh-4QfM5z9J-1eG4-x-K-R6VPr2z
Fyi
SeI-DbaG
ch-xwFn
OeC-GPVI
JLzvUSi
Fxh-hLAs
pKHzCP-sgaO-554
eytqeW-hfgH-uQ
ydn-zeOP-PR
uoWmBM-yHCf-JE
xwYem
zie
Re-wjSv-Ey-i-XE-E-JjWTEB8-f-DLSH-NVzLH-AtnFGWoH-SIDE
Ri-063-c-u6v-ZfhkToTB-C-IFfmv-XT-j-rdyYFMhK-h-pY-D5-Oh6FqBhL-hcXt-v-WdpNx71-K-c74m4-eBTT7-JdH7Q1Z
ji
IM-487
EPZ-zwcB
GauwEcwo
kDEP
FwDYt-TNvo
ottqP-KLES-x-9-i9
fcflR-grQQ
TvFwdu-kYhs
WE-336
MgxQa-ywEp-8lcW-7bvT-h-dP1Md-0h7-0Z3ir-K-Srkm-kA-7LXM-Z-whb2MiO-2mNsvbLm-W3O-4r-U-KceIxHdI-gvMVgUBV-2uRUni-J0-7C8yTK2
Hyr-B-evMtVoB1-mtsVZf-vQMV-gM-I-rr-kvLzg-f-lAUK-Qb36Ne-Z-7eFzOD-mv6kKf-l-miZ7U3-k-XDGtNQG
ybrlCpzy
PTow-w-cAQ51-8Xd6E-cumicgt-WpkZv3NY-q-ORYPRy-v-A4jL4A-iNEqQZZ-sjKn-W-N1F-pzyc-xP5eWz-LmsCiCcZ
ih-DlPR-PE
Krf-362
WzaD
EPaOnB-gHHn
XYta
NZ-RgOO-tR
at-FE
Tpc-693
YFp
gRQrQULo
pVomZ-585
laSu-ZcAq-338
gCW
PydSwHRI-TYfF
zKmWDD
X-bCrL5RL
HK
YMKGcLY
GDJ-nHYa-bw-X-ke-rohH5GfS-LdJKsGVe
tfOxdau-yjge-489-a-oB-I8Csb-1ESaK1v-VFNz-N-FT-ZQyn-On2-I-hu-vaW3-jIQb-vg0U-hUl-h-dO6KuJqB-U-tde2L-P3gHUY-vnl5c-RyO-H-gK1-zDPu-VF1oeh8W-kGzzvBbW-yuAJZ
LwDux
Zl-072
Ri-Ar
vocMSwo-cJnr-288
kUWq-gWfQ-794
YyzqKL-273
Xrw-ZHwH-841-9foT-ESSZF-6OqO-0knk-991U-9p3m-b-JhiV-0Kq7Y-h-cxphLb-cDlXUBOQ-X-4Ti-jty94yPp
en-GB-oed
LEuZl-so
HyvBvFi-cCAl-X-irMQA-Pzt-H
uDbsrAA-304
wTS
IWXS
XvDqNkSn-jRDR
gX-Ycbb-iLphEks-AQ1aJ5
FbSBz-VLcR-VL
JYoVQOP-Iytp
gDSoDGD-lq-v-7aFec-ag-k-Z4-0kgNxXC-7h
Bjvoayy-029
qSDJd
qpbQov
fYIll-516
GfgLyfWE-EHtB
Wc-ZMtk
cgh-VEYK
WRZs-AaFd-yQ
eSb-CpsZ-788
YVwFU
JSsHiQhr-MpjT-381
LuhtJIQi-JKYt
vVTvS-RHcP
SY
fSf-EgvQfI-ktWoG-8X5z-63PW
NOKcy
OjJb-550
KB
qzKBv-zDKk-589
Jr
Acw-GPXf-088
WAFSbos
HkgnmerM-x-e5-zf-VdDjcpz-1V6
UAfYflJU-uXDc-YV
x-CHsHx-VDcOUAur-FqagDTx-H-V0e74R
uZIAZ-Xmbh-pd
ILL-FORMED
-a
a-
a1-Hant-ZH
aabbccddE
a--b
ab-123-abc
ab-123-abc
ab-123-abcd
ab-123-abcd
ab-1abc-abc
ab-1abc-abc
ab-1abc-abcd
ab-1abc-abcd
ab--ab
ab--ab
ab-a-b
ab-a-b
ab-ab-abc
ab-ab-abc
ab-ab-abcd
ab-ab-abcd
-ab-abc
-ab-abc
ab-abc-
ab-abc-
ab-abc-abc-abc-abc
ab-abc-abc-abc-abc
ab-abcd-abc
ab-abcd-abc
ab-abcde-abc
ab-abcde-abc
ab-abcde-abcd
ab-abcde-abcd
ab-a-x
ab-a-x
abcd-efg
abcdefghi-012345678
abcdefghi-012345678
a-foo
a-Hant-ZH
a-value
a-x
b-fish
en-enx-eny-enz-enw
en-UK-oed
en-US-Latn
f
f-Latn
fr-Latn-F
overlongone
tlh-a-b-foo
i-notexist # legacy but not registered: invalid, even if we only test well-formedness
en-enx # Extended tag
en-enx-eny-enz-latn-us # Extended tag
fr-fra # Extended tag
fr-Lat # Extended
#mechanically generated ill-formed items
EdY-z_H791Xx6_m_kj
qWt85_8S0-L_rbBDq0gl_m_O_zsAx_nRS
VzyL2
T_VFJq-L-0JWuH_u2_VW-hK-kbE
u-t
Q-f_ZVJXyc-doj_k-i
JWB7gNa_K-5GB-25t_W-s-ZbGVwDu1-H3E
b-2T-Qob_L-C9v_2CZxK86
fQTpX_0_4Vg_L3L_g7VtALh2
S-Z-E_J
f6wsq-02_i-F
9_GcUPq_G
QjsIy_9-0-7_Dv2yPV09_D-JXWXM
D_se-f-k
ON47Wv1_2_W
f-z-R_s-ha
N3APeiw_195_Bx2-mM-pf-Z-Ip5lXWa-5r
IRjxU-E_6kS_D_b1b_H
NB-3-5-AyW_FQ-9hB-TrRJg3JV_3C
yF-3a_V_FoJQAHeL_Z-Mc-u
n_w_bbunOG_1-s-tJMT5je
Q-AEWE_X
57b1O_k_R6MU_sb
hK_65J_i-o_SI-Y
wB4B7u_5I2_I_NZPI
J24Nb_q_d-zE
v6-dHjJmvPS_IEb-x_A-O-i
8_8_dl-ZgBr84u-P-E
nIn-xD7EVhe_C
5_N-6P_x7Of_Lo_6_YX_R
0_46Oo0sZ-YNwiU8Wr_d-M-pg1OriV
laiY-5
K-8Mdd-j_ila0sSpo_aO8_J
wNATtSL-Cp4_gPa_fD41_9z
H_FGz5V8_n6rrcoz0_1O6d-kH-7-N
wDOrnHU-odqJ_vWl
gP_qO-I-jH
h
dJ0hX-o_csBykEhU-F
L-Vf7_BV_eRJ5goSF_Kp
y-oF-chnavU-H
9FkG-8Q-8_v
W_l_NDQqI-O_SFSAOVq
kDG3fzXw
t-nsSp-7-t-mUK2
Yw-F
1-S_3_l
u-v_brn-Y
4_ft_3ZPZC5lA_D
n_dR-QodsqJnh_e
Hwvt-bSwZwj_KL-hxg0m-3_hUG
mQHzvcV-UL-o2O_1KhUJQo_G2_uryk3-a
b-UTn33HF
r-Ep-jY-aFM_N_H
K-k-krEZ0gwD_k_ua-9dm3Oy-s_v
XS_oS-p
EIx_h-zf5
p_z-0_i-omQCo3B
1_q0N_jo_9
0Ai-6-S
L-LZEp_HtW
Zj-A4JD_2A5Aj7_b-m3
x
p-qPuXQpp_d-jeKifB-c-7_G-X
X94cvJ_A
F2D25R_qk_W-w_Okf_kx
rc-f
D
gD_WrDfxmF-wu-E-U4t
Z_BN9O4_D9-D_0E_KnCwZF-84b-19
T-8_g-u-0_E
lXTtys9j_X_A_m-vtNiNMw_X_b-C6Nr
V_Ps-4Y-S
X5wGEA
mIbHFf_ALu4_Jo1Z1
ET-TacYx_c
Z-Lm5cAP_ri88-d_q_fi8-x
rTi2ah-4j_j_4AlxTs6m_8-g9zqncIf-N5
FBaLB85_u-0NxhAy-ZU_9c
x_j_l-5_aV95_s_tY_jp4
PL768_D-m7jNWjfD-Nl_7qvb_bs_8_Vg
9-yOc-gbh
6DYxZ_SL-S_Ye
ZCa-U-muib-6-d-f_oEh_O
Qt-S-o8340F_f_aGax-c-jbV0gfK_p
WE_SzOI_OGuoBDk-gDp
cs-Y_9
m1_uj
Y-ob_PT
li-B
f-2-7-9m_f8den_J_T_d
p-Os0dua-H_o-u
L
rby-w