]> git.saurik.com Git - apple/icu.git/blob - icuSources/data/translit/Han_Latin_Names.txt
ICU-66108.tar.gz
[apple/icu.git] / icuSources / data / translit / Han_Latin_Names.txt
1 # © 2016 and later: Unicode, Inc. and others.
2 # License & terms of use: http://www.unicode.org/copyright.html#License
3 #
4 # File: Han_Latin_Names.txt
5 # Generated from CLDR
6 #
7
8 # This transform is primarily intended to produce readings for Chinese surnames, or for full
9 # Chinese personal names - surname first - that occur at the beginning of a contiguous Han substring
10 # (i.e. at the beginning of text, or immediately preceded by space or other non-Han characters).
11 # Several Han characters have different readings in surnames, than the readings found in Han-Latin.
12 # ----
13 # Insert marker at start of each Han sequence (including Han after space).
14 # Do this before ::Han-Spacedhan() to catch Han after space in original text,
15 # and to apply before all other rules.
16 $startOfHanMarker = \uFDD1;
17 [:^script=Han:] { ([:script=Han:]) → $startOfHanMarker $1;
18 # Need Spacedhan so the name transliterations get spaced properly
19 ::Han-Spacedhan();
20 # Convert special name readings that depend on next character
21 令 } \u0020? 狐 →líng;
22 万 } \u0020? 俟 →mò;
23 澹 } \u0020? 台 →tán;
24 # The following maps 长 to the standard Han-Latin reading zhǎng for this case,
25 # to override the normal Han-Latin/Names reading 长→cháng further below
26 $startOfHanMarker{ 长 } \u0020? 孙 →zhǎng;
27 # Convert single characters with special name readings
28 $startOfHanMarker{ 秘→bì;
29 $startOfHanMarker{ 卜→bǔ;
30 长→cháng;
31 $startOfHanMarker{ 种→chóng;
32 $startOfHanMarker{ 重→chóng;
33 $startOfHanMarker{ 刀→diāo;
34 干→gān;
35 葛→gě;
36 $startOfHanMarker{ 盖→gě;
37 $startOfHanMarker{ 过→guō;
38 $startOfHanMarker{ 华→huà;
39 $startOfHanMarker{ 纪→jǐ;
40 筠→jūn;
41 $startOfHanMarker{ 阚→kàn;
42 靓→liàng;
43 $startOfHanMarker{ 牟→mù;
44 $startOfHanMarker{ 粘→nián;
45 $startOfHanMarker{ 区→ōu;
46 $startOfHanMarker{ 繁→pó;
47 $startOfHanMarker{ 覃→qín;
48 仇→qiú;
49 $startOfHanMarker{ 任→rén;
50 $startOfHanMarker{ 单→shàn;
51 $startOfHanMarker{ 召→shào;
52 $startOfHanMarker{ 折→shé;
53 $startOfHanMarker{ 舍→shè;
54 $startOfHanMarker{ 沈→shěn;
55 峙→shì;
56 隗→wěi;
57 $startOfHanMarker{ 解→xiè;
58 莘→xīn;
59 $startOfHanMarker{ 燕→yān;
60 $startOfHanMarker{ 尉→yù;
61 $startOfHanMarker{ 乐→yuè;
62 $startOfHanMarker{ 员→yùn;
63 $startOfHanMarker{ 查→zhā;
64 翟→zhái;
65 曾→zēng;
66 # Convert $startOfHanMarkers to space, or to nothing if they are at the beginning of text.
67 # Need to do this as a separate pass to get the spacing right.
68 ::Null();
69 [^$]{ $startOfHanMarker →\u0020;
70 $startOfHanMarker →;
71 # Then run the normal Han-Latin transform for the rest
72 ::Han-Latin();
73