-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathvi-puncsdef.uti
446 lines (383 loc) · 12.5 KB
/
vi-puncsdef.uti
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
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
# Vietnamese signs and punctuations
#
#-copyright: Sao Mai Center for the Blind
#-license: LGPLv2.1
#
# Copyright (C) 2018, 2023 by Sao Mai Center for the Blind <www.saomaicenter.org/en>
#
# This file is part of liblouis.
#
# liblouis is free software: you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation, either version 2.1 of the
# License, or (at your option) any later version.
#
# liblouis is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with liblouis. If not, see
# <http://www.gnu.org/licenses/>.
#
# Created and maintained by: Dang Hoai Phuc, [email protected]
display ! 2346
punctuation ! 235
display " 5
punctuation " 236
display ? 1456
punctuation ? 26
match %[^_~]%<* " %[_.$]*%[a#] 236
match %[a#]%[_.$]* " %>*%[^_~] 356
display # 3456
sign # 3456
display $ 1246
sign $ 4-234
display % 146
sign % 3456-245-356
math % 3456-245-356
display & 12346
sign & 12346
punctuation ' 3
display ( 12356
punctuation ( 4-126
display ) 23456
punctuation ) 4-345
display * 16
punctuation * 236
# Want to handle * sign case below but the command doesn't work. Noted for future updte
# match %# * %# 5-236
display + 346
math + 5-235
display , 6
punctuation , 2
decpoint , 256
punctuation - 36
math - 5-36
hyphen - 36
display . 46
punctuation . 256
decpoint . 3
display / 34
sign / 34
math / 5-34
punctuation / 34
display : 156
punctuation : 25
display ; 56
punctuation ; 23
display < 126
math < 5-246
display = 123456
math = 5-2356
display > 345
punctuation > 5-135
display @ 47
sign @ 4
display [ 2467
punctuation [ 46-126
display \\ 12567
sign \\ 4-16
display ] 124567
punctuation ] 46-345
display ^ 457
sign ^ 4-26
display _ 456
sign _ 4-456
display ` 4
sign ` 4-4 grave accent
display } 12456
punctuation } 456-345
display | 1256
sign | 456-1256
display { 246
punctuation { 456-126
display ~ 45
math ~ 4-35
always ... 3-3-3
# Most of Vietnamese unicode signs have same UEB char definitions
# Modifiers
# acute accent
sign \x00b4 45-34 ´
sign \x0301 45-34 ́
noback correct [$l]"́" "́"*
# circumflex/carot
display \x005e 457 ^
sign \x005e 4-26 ^
sign \x0302 45-146 ̂
noback correct [$l]"̂" "̂"*
# grave accent
sign \x0060 46-16 `
noback punctuation ` 4
sign \x0300 45-16 ̀̀
noback correct [$l]"̀" "̀"*
# tilde
display \x007e 45 ~
math \x007e 4-35 ~
sign \x0303 45-12456 ̃
noback correct [$l]"̃" "̃"*
noback pass2 @45-12456-6 @6-45-12456 move after capital sign
# macron
sign \x00af 4-36 ¯
sign \x0304 45-4-36 ̄
noback correct [$l]"̄" "̄"*
# cedilla
sign \x00b8 45-12346 ¸
sign \x0327 45-12346 ̧
noback correct [$l]"̧" "̧"*
# diaeresis/umlat
sign \x00a8 45-25 ¨
sign \x0308 45-25 ̈
noback correct [$l]"̈" "̈"*
# caron
sign \x02c7 45-345 ˇ
sign \x030c 45-346 ̌
noback correct [$l]"̌" "̌"*
# breve
sign \x02d8 4-346 ˘
sign \x0306 4-346 ̆
noback correct [$l]"̆" "̆"*
# ring/circle
sign \x02da 45-1246 ˚
sign \x030a 45-1246 ̊
noback correct [$l]"̊" "̊"*
# Unicode: Latin-1 Supplement
punctuation \x0093 236
punctuation \x0094 356
punctuation \x0096 36
sign \x00a1 45-56-235 ¡
punctuation \x00a1 235 ¡
sign \x00a2 4-14 ¢ cent
sign \x00a3 4-123 £ pound
sign \x00a4 1246 ¤ currency
sign \x00a5 4-13456 ¥ yen
sign \x00a6 46-1256 ¦ broken bar
punctuation \x00a6 456-1256 ¦ broken bar
sign \x00a7 45-234 § section
sign \x00a9 45-14 © copyright
punctuation \x00ab 456-236 «
sign \x00ac 4-1456 ¬
punctuation \x00ad 36 - soft hyphen
sign \x00ae 45-1235 ® registered
sign \x00b0 45-245 °
math \x00b1 456-235 ±
# fake grade 1 and superscript indicator
math \x00b2 35-3456-12 ²
math \x00b3 35-3456-14 ³
sign \x00b5 6-134 µ
math \x00b7 4-16 ·
# fake numeric indicator
math \x00bc 3456-1-34-145 ¼
math \x00bd 3456-1-34-12 ½
math \x00be 3456-14-34-145 ¾
sign \x00b6 45-1234 ¶ pilcrow
punctuation \x00bb 456-356 »
punctuation \x00bf 45-56-26 ¿
math \x00d7 5-236 ×
math \x00f7 34 ÷
# Unicode: IPA Extensions
sign \x02e6 45-46-14 ˦ high tone
sign \x02e7 45-46-25 ˧ mid tone
sign \x02e8 45-46-36 ˨ low tone
# Unicode: General Punctuation
space \x2000 0
space \x2001 0
space \x2002 0
space \x2003 0
space \x2004 0
space \x2005 0
space \x2006 0
space \x2007 0
space \x2008 0
space \x2009 0
space \x200a 0
space \x200b 0
punctuation \x2010 36 ‐
punctuation \x2011 36 ‑
noback punctuation \x2013 36 – backtranslate as \x2014
punctuation \x2014 36 — Rules of UEB, App.3
punctuation \x2015 5-6-36 ―
noback punctuation \x2018 6-236 ‘
noback punctuation \x2019 6-356 ’
match %a \x2019 %a 3 # single quote between letters is really apostrophe
punctuation \x201c 236 “
punctuation \x201d 356 ”
sign \x2020 4-6-1456 † dagger
sign \x2021 4-6-12456 ‡ double dagger
sign \x2022 456-256 • bullet
punctuation \x2026 3-3-3 … ellipsis
space \x202f 0 narrow no-break space
sign \x2032 3 ′ prime (derivative)
sign \x2033 3-3 ″ double prime (second derivative)
# Unicode: Currency Symbols
sign \x20a3 4-124 ₣ franc
sign \x20a6 4-1345 ₦ naira
sign \x20ac 4-15 € euro
# Unicode: Letterlike Symbols
sign \x2122 45-2345 ™
noback sign \x2126 456-2456 Ω Ohm sign, same as capital Omega
# Unicode: Number Forms
# fake numerical indicator for simple fractions
math \x2150 3456-1-34-1245 ⅐
math \x2151 3456-1-34-24 ⅑
math \x2152 3456-1-34-1-245 ⅒
math \x2153 3456-1-34-14 ⅓
math \x2154 3456-12-34-14 ⅔
math \x2155 3456-1-34-15 ⅕
math \x2156 3456-12-34-15 ⅖
math \x2157 3456-14-34-15 ⅗
math \x2158 3456-145-34-15 ⅘
math \x2159 3456-1-34-124 ⅙
math \x215a 3456-15-34-124 ⅚
math \x215b 3456-1-34-125 ⅛
math \x215c 3456-14-34-125 ⅜
math \x215d 3456-15-34-125 ⅝
math \x215e 3456-1245-34-125 ⅞
math \x2189 3456-245-34-14 ↉
# Unicode: Arrows
sign \x2190 56-1256-246 ←
sign \x2191 56-1256-346 ↑
sign \x2192 56-1256-135 →
sign \x2193 56-1256-146 ↓
sign \x2196 56-1256-156 ↖
sign \x2197 56-1256-234 ↗
sign \x2198 56-1256-126 ↘
sign \x2199 56-1256-345 ↙
sign \x21a6 56-1256-1256 ↦
sign \x21b2 56-1256-256 ↲
sign \x21b3 56-1256-356 ↳
sign \x21b5 56-1256-256-146 ↵ Rules of UEB, page 21
sign \x21c0 56-1256-4-1235 ⇀
sign \x21c1 56-1256-6-1235 ⇁
sign \x21cc 45-456-2356 ⇌ equilibrium arrow (harpoons)
sign \x21d2 56-1256-2356-2356 ⇒
# Unicode: Mathematical Operators
sign \x2200 45-1 ∀ for all
sign \x2202 4-145 ∂ partial derivative
sign \x2203 45-15 ∃ there exists
sign \x2204 45-15-4 ∄ there does not exist
sign \x2205 4-245 ∅ empty set
noback sign \x2206 456-145 ∆ Increment same as capital Delta
sign \x2207 45-145 ∇ nabla
sign \x2208 4-15 ∈ element of
sign \x2209 4-15-4 ∉ not an element of
sign \x220b 4-45-15 ∋ contains (such that)
sign \x220c 4-45-15-4-156 ∌ does not contain as member
sign \x220f 456-1234 ∏ product (capital pi)
sign \x2211 456-234 ∑ sum (capitol sigma)
sign \x2212 5-36 − minus sign (not hyphen)
sign \x2213 36-5-235 ∓ minus or plus
noback sign \x2216 456-16 ∖ set minus
noback sign \x2217 5-35 ∗ asterisk operator
sign \x2218 5-356 ∘ hollow dot (ring operator)
sign \x221a 146 √ square root
sign \x221d 456-5-2356 ∝ proportional to
sign \x221e 3456-135 ∞ infinity
sign \x2220 1246-1245 ∠ angle
sign \x2221 46-1246-1245 ∡ measured angle
noback sign \x2223 126-356-345 ∣ divides
sign \x2224 126-3456-345 ∤ does not divide
sign \x2225 1246-2356 ∥ parallel to
sign \x2226 1246-2356-4 ∦ not parallel to
sign \x2227 4-236 ∧ logical and
sign \x2228 4-235 ∨ logical or
sign \x2229 46-236 ∩ set intersection
sign \x222a 46-235 ∪ set union
sign \x222b 23456 ∫ integral
sign \x222e 5-23456 contour integral
noback sign \x2234 6-16 ∴ therefore # using noback to avoid conflict with Child
sign \x2235 4-34 ∵ because
noback sign \x2236 25 ∶ ratio # using noback to avoid conflict with :
sign \x2237 25-25 ∷ proportion
noback sign \x223c 4-35 ∼ tilde operator
sign \x2241 4-35-4-156 ≁ not tilde
sign \x2243 5-26-26 ≃ asymptotically equal to
sign \x2244 5-26-26-4 ≄ not asymptotically equal
sign \x2245 5-26-26 ≅ approximately equal to
sign \x2247 5-26-26-4 ≇ neither approximately nor actually equal
sign \x2248 5-26-26 ≈ almost equal to
sign \x2249 5-26-26-4 ≉ not almost equal
sign \x224f 45-5-2356 ≏ difference between
sign \x2251 46-5-2356 ≑ geometrically equal
noback sign \x2260 5-23456 ≠ not equal
sign \x2261 456-123456 ≡ identical (equivalent) to
sign \x2262 456-123456-4-156 ≢ not identical to
sign \x2264 5-246-2356 ≤ less than or equal to
sign \x2265 5-135-2356 ≥ greater than or equal to
sign \x226a 5-246-246 ≪ much less than
sign \x226b 5-135-135 ≫ much greater than
sign \x226e 5-246-4 ≮ not less than
sign \x226f 5-135-4 ≯ not greater than
sign \x2270 456-4-126-4-156 ≰ neither less than nor equal to
sign \x2271 456-4-345-4-156 ≱ neither greather than nor equal to
sign \x2282 45-126 ⊂ subset of
sign \x2283 45-345 ⊃ superset of
sign \x2284 45-126-4 ⊄ not subset of
sign \x2285 45-345-4 ⊅ not superset of
sign \x2286 45-126-2356 ⊆ subset or equal to
sign \x2287 45-345-2356 ⊇ superset or equal to
sign \x2288 456-45-126-4-156 ⊈ neither a subset nor equal
sign \x2289 456-45-345-4-156 ⊉ neither a superset nor equal
sign \x228a 46-45-126 ⊊ proper subset
sign \x228b 46-45-345 ⊋ proper superset
noback sign \x22a2 456-25 ⊢ right tack
sign \x22a3 4-456-25 ⊣ left tack
sign \x22a5 3456-36 ⊥ up tack
sign \x22a6 456-25 ⊦ assertion
sign \x22a8 45-456-25 ⊨ valid
sign \x22ac 456-25-4-156 ⊬ does not prove
sign \x22ad 45-456-25-4-156 ⊭ not true
sign \x22b2 4-456-126 ⊲ normal subgroup
sign \x22b3 4-456-345 ⊳ contains as normal subgroup
sign \x22b4 456-456-126 ⊴ normal subgroup or equal
sign \x22b5 456-456-345 ⊵ contains as normal subgroup or equal
sign \x22be 3456-456-246 ⊾ right angle with arc
sign \x22c5 5-236 ⋅ dot operator
sign \x22ea 4-456-126-4-156 ⋪ not normal subgroup
sign \x22eb 4-456-345-4-156 ⋫ does not contain as normal subgroup
sign \x22ec 456-456-126-4-156 ⋬ not normal subgroup nor equal
sign \x22ed 456-456-345-4-156 ⋭ does not contain as normal subgroup nor equal
# Unicode: Miscellaneous Technical
math \x2329 456-126 〈
math \x232A 456-345 〉
# Unicode: Box Drawing
noback sign \x2502 456 │ tally mark - vertical single solid line segment
noback sign \x250a 45 ┊ first variant vertical line segment
noback sign \x2551 6-456 ║ second variant vertical line segment
noback sign \x2571 345 ╱ right-leaning single solid diagonal line segment # using noback to avoid conflict with "ar" contraction
noback sign \x2572 126 ╲ left-leaning single solid diagonal line segment # using noback to avoid conflict with "gh" contraction
# Unicode: Geometric Shapes
sign \x25a0 456-1246-3456-145 ■ filled (solid) square
sign \x25a1 1246-3456-145 □ square
sign \x25a7 46-1246-3456-145 ▧ shaded square (upper left to lower right)
sign \x25b2 456-1246-3456-14 ▲ filled (solid) (equilateral) triangle
sign \x25b3 1246-3456-14 △ regular (equilateral) triangle
sign \x25cb 1246-123456 ○ circle
sign \x25cd 46-1246-123456 ◍ shaded circle
sign \x25aa 456-256 ▪
noback sign \x25cf 5-35 ● black circle # not representing filled circle shape as it is mostly used in password fields to represent hidden characters
# Unicode: Miscellaneous Symbols
sign \x2640 45-1346 ♀
sign \x2642 45-13456 ♂
sign \x266D 3456-126 ♭
sign \x266E 3456-16 ♮
sign \x266F 3456-146 ♯
# Unicode: Dingbats
sign \x2713 4-146 ✓ check mark
noback sign \x2714 4-146 ✔ check mark
# Unicode: Miscellaneous Mathematical Symbols-A
noback sign \x27c2 1246-1236 ⟂ perpendicular
# Unicode: Miscellaneous Mathematical Symbols-B
sign \x2980 3456-456-123 ⦀ triple vertical bar delimiter
sign \x29b5 46-245 ⦵ 'normal' (superscript circle crossed by horizontal line)
# Unicode: Supplemental Mathematical Operators
sign \x2a23 45-146-5-235 ⨣
sign \x2a24 45-12456-5-235 ⨤
sign \x2ae4 46-456-25 ⫤ reverse 'is valid' sign
noback sign \x2af4 3456-456-123 ⫴ triple vertical bar binary relation
noback sign \x2afc 3456-456-123 ⫼ large triple vertical bar operator
# Unicode: CJK Symbols and Punctuation
sign \x3003 5-2 〃 ditto mark
math \x3008 5-246 〈
math \x3009 5-135 〉