]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/data/translit/Han_Spacedhan.txt
ICU-62107.0.1.tar.gz
[apple/icu.git] / icuSources / data / translit / Han_Spacedhan.txt
index 5535eba46e6c76a1169c9c638fcc3e03a311bfd1..9428d4dd9c8f1317a7500d517db6fdfa48ae5ebf 100644 (file)
@@ -1,17 +1,24 @@
-# ***************************************************************************
-# *
-# *  Copyright (C) 2004-2008, International Business Machines
-# *  Corporation; Unicode, Inc.; and others.  All Rights Reserved.
-# *
-# ***************************************************************************
+# © 2016 and later: Unicode, Inc. and others.
+# License & terms of use: http://www.unicode.org/copyright.html#License
+#
 # File: Han_Spacedhan.txt
-# Generated from CLDR 
+# Generated from CLDR
 #
+
+# Only intended for internal use
+# Make sure Han are normalized, including characters that contain them.
+# The first set in the filter is computed with http://unicode.org/cldr/utility/list-unicodeset.jsp?a=[:tonfkd:/XXX/:]-[:ideographic:]-[:sc=han:]
+# Where XXX is the resolved [:ideographic:][:sc=han:]. It needs updating with each Unicode release!
+:: [[㆒-㆟㈠-㉇㊀-㊰㋀-㋋㍘-㍰㍻-㍿㏠-㏾ 🈐-🈒🈔-🈺🉀-🉈🉐🉑][:ideographic:][:sc=han:]] nfkc;
 :: fullwidth-halfwidth;
-。 > '.';
+。  '.';
 $terminalPunct = [\.\,\:\;\?\!.,:?!。、;[:Pe:][:Pf:]];
 $initialPunct = [:Ps:][:Pi:];
-[[:Ideographic:] $terminalPunct] {} [:Letter:] > ' ' ;
-[:Letter:] [:Mark:]* {} [[:Ideographic:] $initialPunct] > ' ' ;
-< [:Ideographic:] { ' ' } [:Letter:] ;
-< [:Letter:] [:Mark:]* { ' ' } [:Ideographic:] ;
+# add space between any Han or terminal punctuation and letters, and
+# between letters and Han or initial punct
+[[:Ideographic:] $terminalPunct] {} [:Letter:] → ' ' ;
+[:Letter:] [:Mark:]* {} [[:Ideographic:] $initialPunct] → ' ' ;
+# remove spacing between ideographs and other letters
+← [:Ideographic:] { ' ' } [:Letter:] ;
+← [:Letter:] [:Mark:]* { ' ' } [:Ideographic:] ;
+