diff options
Diffstat (limited to 'intl/icu/source/data/translit/Han_Latin_Names.txt')
-rw-r--r-- | intl/icu/source/data/translit/Han_Latin_Names.txt | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/intl/icu/source/data/translit/Han_Latin_Names.txt b/intl/icu/source/data/translit/Han_Latin_Names.txt new file mode 100644 index 0000000000..ca9c31e4eb --- /dev/null +++ b/intl/icu/source/data/translit/Han_Latin_Names.txt @@ -0,0 +1,72 @@ +# © 2016 and later: Unicode, Inc. and others. +# License & terms of use: http://www.unicode.org/copyright.html +# Generated using tools/cldr/cldr-to-icu/build-icu-data.xml +# +# File: Han_Latin_Names.txt +# Generated from CLDR +# + +# This transform is primarily intended to produce readings for Chinese surnames, or for full +# Chinese personal names - surname first - that occur at the beginning of a contiguous Han substring +# (i.e. at the beginning of text, or immediately preceded by space or other non-Han characters). +# Several Han characters have different readings in surnames, than the readings found in Han-Latin. +# ---- +# Insert marker at start of each Han sequence (including Han after space). +# Do this before ::Han-Spacedhan() to catch Han after space in original text, +# and to apply before all other rules. +$startOfHanMarker = \uFDD1; +[:^script=Han:] { ([:script=Han:]) → $startOfHanMarker $1; +# Need Spacedhan so the name transliterations get spaced properly +::Han-Spacedhan(); +# Convert special name readings that depend on next character +令 } \u0020? 狐 →líng; +万 } \u0020? 俟 →mò; +澹 } \u0020? 台 →tán; +# The following maps 长 to the standard Han-Latin reading zhǎng for this case, +# to override the normal Han-Latin/Names reading 长→cháng further below +$startOfHanMarker{ 长 } \u0020? 孙 →zhǎng; +# Convert single characters with special name readings +$startOfHanMarker{ 秘→bì; +$startOfHanMarker{ 卜→bǔ; +长→cháng; +$startOfHanMarker{ 种→chóng; +$startOfHanMarker{ 重→chóng; +$startOfHanMarker{ 刀→diāo; +干→gān; +葛→gě; +$startOfHanMarker{ 盖→gě; +$startOfHanMarker{ 过→guō; +$startOfHanMarker{ 华→huà; +$startOfHanMarker{ 纪→jǐ; +筠→jūn; +靓→liàng; +$startOfHanMarker{ 牟→mù; +$startOfHanMarker{ 粘→nián; +$startOfHanMarker{ 区→ōu; +$startOfHanMarker{ 繁→pó; +仇→qiú; +$startOfHanMarker{ 任→rén; +$startOfHanMarker{ 单→shàn; +$startOfHanMarker{ 召→shào; +$startOfHanMarker{ 折→shé; +$startOfHanMarker{ 舍→shè; +$startOfHanMarker{ 沈→shěn; +峙→shì; +隗→wěi; +$startOfHanMarker{ 解→xiè; +莘→xīn; +$startOfHanMarker{ 燕→yān; +$startOfHanMarker{ 尉→yù; +$startOfHanMarker{ 乐→yuè; +$startOfHanMarker{ 员→yùn; +$startOfHanMarker{ 查→zhā; +翟→zhái; +曾→zēng; +# Convert $startOfHanMarkers to space, or to nothing if they are at the beginning of text. +# Need to do this as a separate pass to get the spacing right. +::Null(); +[^$]{ $startOfHanMarker →\u0020; +$startOfHanMarker →; +# Then run the normal Han-Latin transform for the rest +::Han-Latin(); + |