X-Git-Url: https://git.saurik.com/apple/icu.git/blobdiff_plain/46f4442e9a5a4f3b98b7c1083586332f6a8a99a4..3d1f044b704633e2e541231cd17ae9ecf9ad5c7a:/icuSources/data/unidata/SpecialCasing.txt diff --git a/icuSources/data/unidata/SpecialCasing.txt b/icuSources/data/unidata/SpecialCasing.txt index 92e70a4a..1c04aacf 100644 --- a/icuSources/data/unidata/SpecialCasing.txt +++ b/icuSources/data/unidata/SpecialCasing.txt @@ -1,18 +1,26 @@ -# SpecialCasing-5.1.0.txt -# Date: 2008-03-03, 21:58:10 GMT [MD] +# SpecialCasing-12.1.0.txt +# Date: 2019-03-10, 10:53:28 GMT +# © 2019 Unicode®, Inc. +# Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. +# For terms of use, see http://www.unicode.org/terms_of_use.html # # Unicode Character Database -# Copyright (c) 1991-2008 Unicode, Inc. -# For terms of use, see http://www.unicode.org/terms_of_use.html -# For documentation, see UCD.html +# For documentation, see http://www.unicode.org/reports/tr44/ # -# Special Casing Properties +# Special Casing # -# This file is a supplement to the UnicodeData file. -# It contains additional information about the casing of Unicode characters. -# (For compatibility, the UnicodeData.txt file only contains case mappings for -# characters where they are 1-1, and independent of context and language. -# For more information, see the discussion of Case Mappings in the Unicode Standard. +# This file is a supplement to the UnicodeData.txt file. It does not define any +# properties, but rather provides additional information about the casing of +# Unicode characters, for situations when casing incurs a change in string length +# or is dependent on context or locale. For compatibility, the UnicodeData.txt +# file only contains simple case mappings for characters where they are one-to-one +# and independent of context and language. The data in this file, combined with +# the simple case mappings in UnicodeData.txt, defines the full case mappings +# Lowercase_Mapping (lc), Titlecase_Mapping (tc), and Uppercase_Mapping (uc). +# +# Note that the preferred mechanism for defining tailored casing operations is +# the Unicode Common Locale Data Repository (CLDR). For more information, see the +# discussion of case mappings and case algorithms in the Unicode Standard. # # All code points not listed in this file that do not have a simple case mappings # in UnicodeData.txt map to themselves. @@ -21,16 +29,17 @@ # ================================================================================ # The entries in this file are in the following machine-readable format: # -# ; ; ; <upper> ; (<condition_list> ;)? # <comment> +# <code>; <lower>; <title>; <upper>; (<condition_list>;)? # <comment> # -# <code>, <lower>, <title>, and <upper> provide character values in hex. If there is more -# than one character, they are separated by spaces. Other than as used to separate -# elements, spaces are to be ignored. +# <code>, <lower>, <title>, and <upper> provide the respective full case mappings +# of <code>, expressed as character values in hex. If there is more than one character, +# they are separated by spaces. Other than as used to separate elements, spaces are +# to be ignored. # # The <condition_list> is optional. Where present, it consists of one or more language IDs -# or contexts, separated by spaces. In these conditions: +# or casing contexts, separated by spaces. In these conditions: # - A condition list overrides the normal behavior if all of the listed conditions are true. -# - The context is always the context of the characters in the original string, +# - The casing context is always the context of the characters in the original string, # NOT in the resulting string. # - Case distinctions in the condition list are not significant. # - Conditions preceded by "Not_" represent the negation of the condition. @@ -38,16 +47,14 @@ # # A language ID is defined by BCP 47, with '-' and '_' treated equivalently. # -# A context for a character C is defined by Section 3.13 Default Case -# Operations, of The Unicode Standard, Version 5.0. -# (This is identical to the context defined by Unicode 4.1.0, -# as specified in http://www.unicode.org/versions/Unicode4.1.0/) +# A casing context for a character is defined by Section 3.13 Default Case Algorithms +# of The Unicode Standard. # # Parsers of this file must be prepared to deal with future additions to this format: # * Additional contexts # * Additional fields # ================================================================================ -# @missing 0000..10FFFF; <slc>; <stc>; <suc> + # ================================================================================ # Unconditional mappings # ================================================================================ @@ -106,15 +113,15 @@ FB17; FB17; 0544 056D; 0544 053D; # ARMENIAN SMALL LIGATURE MEN XEH 1FE7; 1FE7; 03A5 0308 0342; 03A5 0308 0342; # GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI 1FF6; 1FF6; 03A9 0342; 03A9 0342; # GREEK SMALL LETTER OMEGA WITH PERISPOMENI -# IMPORTANT-when capitalizing iota-subscript (0345) -# It MUST be in normalized form--moved to the end of any sequence of combining marks. -# This is because logically it represents a following base character! -# E.g. <iota_subscript> (<Mn> | <Mc> | <Me>)+ => (<Mn> | <Mc> | <Me>)+ <iota_subscript> -# It should never be the first character in a word, so in titlecasing it can be left as is. +# IMPORTANT-when iota-subscript (0345) is uppercased or titlecased, +# the result will be incorrect unless the iota-subscript is moved to the end +# of any sequence of combining marks. Otherwise, the accents will go on the capital iota. +# This process can be achieved by first transforming the text to NFC before casing. +# E.g. <alpha><iota_subscript><acute> is uppercased to <ALPHA><acute><IOTA> -# The following cases are already in the UnicodeData file, so are only commented here. +# The following cases are already in the UnicodeData.txt file, so are only commented here. -# 0345; 0345; 0345; 0399; # COMBINING GREEK YPOGEGRAMMENI +# 0345; 0345; 0399; 0399; # COMBINING GREEK YPOGEGRAMMENI # All letters with YPOGEGRAMMENI (iota-subscript) or PROSGEGRAMMENI (iota adscript) # have special uppercases. @@ -190,7 +197,7 @@ FB17; FB17; 0544 056D; 0544 053D; # ARMENIAN SMALL LIGATURE MEN XEH # ================================================================================ # Conditional Mappings -# The remainder of this file provides conditional casing data used to produce +# The remainder of this file provides conditional casing data used to produce # full case mappings. # ================================================================================ # Language-Insensitive Mappings @@ -203,7 +210,7 @@ FB17; FB17; 0544 056D; 0544 053D; # ARMENIAN SMALL LIGATURE MEN XEH 03A3; 03C2; 03A3; 03A3; Final_Sigma; # GREEK CAPITAL LETTER SIGMA -# Note: the following cases for non-final are already in the UnicodeData file. +# Note: the following cases for non-final are already in the UnicodeData.txt file. # 03A3; 03C3; 03A3; 03A3; # GREEK CAPITAL LETTER SIGMA # 03C3; 03C3; 03A3; 03A3; # GREEK SMALL LETTER SIGMA @@ -266,7 +273,7 @@ FB17; FB17; 0544 056D; 0544 053D; # ARMENIAN SMALL LIGATURE MEN XEH 0069; 0069; 0130; 0130; tr; # LATIN SMALL LETTER I 0069; 0069; 0130; 0130; az; # LATIN SMALL LETTER I -# Note: the following case is already in the UnicodeData file. +# Note: the following case is already in the UnicodeData.txt file. # 0131; 0131; 0049; 0049; tr; # LATIN SMALL LETTER DOTLESS I