diff --git a/.gitattributes b/.gitattributes index c49ebd640ab..5a035119a8a 100644 --- a/.gitattributes +++ b/.gitattributes @@ -74,8 +74,12 @@ icu4c/source/data/coll/ur_IN.txt -text icu4c/source/data/coll/ur_PK.txt -text icu4c/source/data/icu4j-readme.txt -text icu4c/source/data/locales/fr_SN.txt -text +icu4c/source/data/locales/gsw.txt -text +icu4c/source/data/locales/gsw_CH.txt -text icu4c/source/data/locales/ha.txt -text icu4c/source/data/locales/ha_Latn.txt -text +icu4c/source/data/locales/ha_Latn_GH.txt -text +icu4c/source/data/locales/ha_Latn_NE.txt -text icu4c/source/data/locales/ha_Latn_NG.txt -text icu4c/source/data/locales/ha_NG.txt -text icu4c/source/data/locales/ii.txt -text @@ -88,10 +92,13 @@ icu4c/source/data/locales/ne_NP.txt -text icu4c/source/data/locales/pa_Arab.txt -text icu4c/source/data/locales/pa_Arab_PK.txt -text icu4c/source/data/locales/pa_PK.txt -text +icu4c/source/data/locales/ro_MD.txt -text icu4c/source/data/locales/si.txt -text icu4c/source/data/locales/si_LK.txt -text icu4c/source/data/locales/zh_Hans_HK.txt -text icu4c/source/data/locales/zh_Hans_MO.txt -text +icu4c/source/data/locales/zu.txt -text +icu4c/source/data/locales/zu_ZA.txt -text icu4c/source/data/misc/likelySubtags.txt -text icu4c/source/data/misc/numberingSystems.txt -text icu4c/source/data/misc/plurals.txt -text @@ -140,6 +147,7 @@ icu4c/source/data/xml/collation/az.xml -text icu4c/source/data/xml/collation/bn_IN.xml -text icu4c/source/data/xml/collation/si.xml -text icu4c/source/data/xml/collation/ur.xml -text +icu4c/source/data/xml/main/gsw.xml -text icu4c/source/data/xml/main/ha.xml -text icu4c/source/data/xml/main/ha_Latn.xml -text icu4c/source/data/xml/main/in.xml -text diff --git a/icu4c/source/common/uloc.c b/icu4c/source/common/uloc.c index fe85bde6fec..8b31bd800d6 100644 --- a/icu4c/source/common/uloc.c +++ b/icu4c/source/common/uloc.c @@ -165,7 +165,7 @@ static const char * const LANGUAGES[] = { "srn", "srr", "ss", "ssa", "st", "su", "suk", "sus", "sux", "sv", "sw", "syc", "syr", "ta", "tai", "te", "tem", "ter", "tet", "tg", "th", "ti", "tig", "tiv", "tk", "tkl", - "tl", "tlh", "tli", "tmh", "tn", "to", "tog", "tpi", "tr", + "tl", "tlh", "tli", "tmh", "tn", "to", "tog", "tpi", "tr", "trv", "ts", "tsi", "tt", "tum", "tup", "tut", "tvl", "tw", "ty", "tyv", "udm", "ug", "uga", "uk", "umb", "und", "ur", "uz", "vai", "ve", "vi", "vo", "vot", "wa", "wak", @@ -300,8 +300,8 @@ static const char * const LANGUAGES_3[] = { "swe", "swa", "syc", "syr", "tam", "tai", "tel", "tem", "ter", /* "tet", "tg", "th", "ti", "tig", "tiv", "tk", "tkl", */ "tet", "tgk", "tha", "tir", "tig", "tiv", "tuk", "tkl", -/* "tl", "tlh", "tli", "tmh", "tn", "to", "tog", "tpi", "tr", */ - "tgl", "tlh", "tli", "tmh", "tsn", "ton", "tog", "tpi", "tur", +/* "tl", "tlh", "tli", "tmh", "tn", "to", "tog", "tpi", "tr", "trv", */ + "tgl", "tlh", "tli", "tmh", "tsn", "ton", "tog", "tpi", "tur", "trv", /* "ts", "tsi", "tt", "tum", "tup", "tut", "tvl", "tw", */ "tso", "tsi", "tat", "tum", "tup", "tut", "tvl", "twi", /* "ty", "tyv", "udm", "ug", "uga", "uk", "umb", "und", "ur", */ diff --git a/icu4c/source/data/build.xml b/icu4c/source/data/build.xml index 125558c07d2..4ee33b84e44 100644 --- a/icu4c/source/data/build.xml +++ b/icu4c/source/data/build.xml @@ -143,6 +143,8 @@ + + diff --git a/icu4c/source/data/icu-config.xml b/icu4c/source/data/icu-config.xml index 9d3ae129df5..9dcd7698efa 100644 --- a/icu4c/source/data/icu-config.xml +++ b/icu4c/source/data/icu-config.xml @@ -1,7 +1,7 @@ + + %icu; +] +> + + + + + + + + + + Latn + + + + + diff --git a/icu4c/source/i18n/ucurr.cpp b/icu4c/source/i18n/ucurr.cpp index 346710fcffa..fb17d570cbe 100644 --- a/icu4c/source/i18n/ucurr.cpp +++ b/icu4c/source/i18n/ucurr.cpp @@ -1504,6 +1504,7 @@ static const struct CurrencyList { {"CRC", UCURR_COMMON|UCURR_NON_DEPRECATED}, {"CSD", UCURR_COMMON|UCURR_DEPRECATED}, {"CSK", UCURR_COMMON|UCURR_DEPRECATED}, + {"CUC", UCURR_COMMON|UCURR_NON_DEPRECATED}, {"CUP", UCURR_COMMON|UCURR_NON_DEPRECATED}, {"CVE", UCURR_COMMON|UCURR_NON_DEPRECATED}, {"CYP", UCURR_COMMON|UCURR_DEPRECATED}, diff --git a/icu4c/source/test/cintltst/cdattst.c b/icu4c/source/test/cintltst/cdattst.c index c447a503cf8..f7cc51fd200 100644 --- a/icu4c/source/test/cintltst/cdattst.c +++ b/icu4c/source/test/cintltst/cdattst.c @@ -180,7 +180,7 @@ static void TestDateFormat() } /*format using fr */ - u_unescape("10 juil. 1996 16:05:28 \\u00C9tats-Unis (Los Angeles)", temp, 50); + u_unescape("10 juil. 1996 16:05:28 heure avanc\\u00E9e du Pacifique", temp, 50); if(result != NULL) { free(result); result = NULL; diff --git a/icu4c/source/test/cintltst/cloctst.c b/icu4c/source/test/cintltst/cloctst.c index 1d0e0b313be..23313d2f5cc 100644 --- a/icu4c/source/test/cintltst/cloctst.c +++ b/icu4c/source/test/cintltst/cloctst.c @@ -1,6 +1,6 @@ /******************************************************************** * COPYRIGHT: - * Copyright (c) 1997-2008, International Business Machines Corporation and + * Copyright (c) 1997-2009, International Business Machines Corporation and * others. All Rights Reserved. ********************************************************************/ /***************************************************************************** @@ -98,15 +98,15 @@ static const char* const rawData2[LOCALE_INFO_SIZE][LOCALE_SIZE] = { /* display language (Catalan) */ { "angl\\u00E8s", "franc\\u00E8s", "catal\\u00E0", "grec", "noruec", "xin\\u00E8s", "alemany", "espanyol", "japon\\u00E8s" }, /* display script code (Catalan) */ - { "", "", "", "", "", "Xin\\u00e8s Simplificat (Han)", "", "", "" }, + { "", "", "", "", "", "xin\\u00e8s simplificat", "", "", "" }, /* display country (Catalan) */ { "Estats Units", "Fran\\u00E7a", "Espanya", "Gr\\u00E8cia", "Noruega", "Xina", "Alemanya", "", "Jap\\u00F3" }, /* display variant (Catalan) */ { "", "", "", "", "NY", "", "", "", "" }, /* display name (Catalan) */ { "angl\\u00E8s (Estats Units)", "franc\\u00E8s (Fran\\u00E7a)", "catal\\u00E0 (Espanya)", - "grec (Gr\\u00E8cia)", "noruec (Noruega, NY)", "xin\\u00E8s (Xin\\u00e8s Simplificat (Han), Xina)", - "alemany (Alemanya, ordre alfab\\u00e8tic=phonebook)", "espanyol (ordre alfab\\u00e8tic=traditional)", "japon\\u00E8s (Jap\\u00F3, calendari=calendari japon\\u00e8s)" }, + "grec (Gr\\u00E8cia)", "noruec (Noruega, NY)", "xin\\u00E8s (xin\\u00e8s simplificat, Xina)", + "alemany (Alemanya, ordre alfab\\u00e8tic=ordre de la guia telef\\u00F2nica)", "espanyol (ordre alfab\\u00e8tic=ordre tradicional)", "japon\\u00E8s (Jap\\u00F3, calendari=calendari japon\\u00e8s)" }, /* display language (Greek) */ { @@ -122,10 +122,10 @@ static const char* const rawData2[LOCALE_INFO_SIZE][LOCALE_SIZE] = { }, /* display script code (Greek) */ - { "", "", "", "", "", "\\u039a\\u03b9\\u03bd\\u03b5\\u03b6\\u03b9\\u03ba\\u03cc \\u0391\\u03c0\\u03bb\\u03bf\\u03c0\\u03bf\\u03b9\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf", "", "", "" }, + { "", "", "", "", "", "\\u0391\\u03c0\\u03bb\\u03bf\\u03c0\\u03bf\\u03b9\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf \\u039a\\u03b9\\u03bd\\u03b5\\u03b6\\u03b9\\u03ba\\u03cc", "", "", "" }, /* display country (Greek) */ { - "\\u0397\\u03bd\\u03c9\\u03bc\\u03ad\\u03bd\\u03b5\\u03c2 \\u03a0\\u03bf\\u03bb\\u03b9\\u03c4\\u03b5\\u03af\\u03b5\\u03c2", + "\\u0397\\u03BD\\u03C9\\u03BC\\u03AD\\u03BD\\u03B5\\u03C2 \\u03A0\\u03BF\\u03BB\\u03B9\\u03C4\\u03B5\\u03AF\\u03B5\\u03C2 \\u03C4\\u03B7\\u03C2 \\u0391\\u03BC\\u03B5\\u03C1\\u03B9\\u03BA\\u03AE\\u03C2", "\\u0393\\u03b1\\u03bb\\u03bb\\u03af\\u03b1", "\\u0399\\u03c3\\u03c0\\u03b1\\u03bd\\u03af\\u03b1", "\\u0395\\u03bb\\u03bb\\u03ac\\u03b4\\u03b1", @@ -139,15 +139,15 @@ static const char* const rawData2[LOCALE_INFO_SIZE][LOCALE_SIZE] = { { "", "", "", "", "NY", "", "", "", "" }, /* TODO: currently there is no translation for NY in Greek fix this test when we have it */ /* display name (Greek) */ { - "\\u0391\\u03b3\\u03b3\\u03bb\\u03b9\\u03ba\\u03ac (\\u0397\\u03bd\\u03c9\\u03bc\\u03ad\\u03bd\\u03b5\\u03c2 \\u03a0\\u03bf\\u03bb\\u03b9\\u03c4\\u03b5\\u03af\\u03b5\\u03c2)", + "\\u0391\\u03b3\\u03b3\\u03bb\\u03b9\\u03ba\\u03ac (\\u0397\\u03BD\\u03C9\\u03BC\\u03AD\\u03BD\\u03B5\\u03C2 \\u03A0\\u03BF\\u03BB\\u03B9\\u03C4\\u03B5\\u03AF\\u03B5\\u03C2 \\u03C4\\u03B7\\u03C2 \\u0391\\u03BC\\u03B5\\u03C1\\u03B9\\u03BA\\u03AE\\u03C2)", "\\u0393\\u03b1\\u03bb\\u03bb\\u03b9\\u03ba\\u03ac (\\u0393\\u03b1\\u03bb\\u03bb\\u03af\\u03b1)", "\\u039a\\u03b1\\u03c4\\u03b1\\u03bb\\u03b1\\u03bd\\u03b9\\u03ba\\u03ac (\\u0399\\u03c3\\u03c0\\u03b1\\u03bd\\u03af\\u03b1)", "\\u0395\\u03bb\\u03bb\\u03b7\\u03bd\\u03b9\\u03ba\\u03ac (\\u0395\\u03bb\\u03bb\\u03ac\\u03b4\\u03b1)", "\\u039d\\u03bf\\u03c1\\u03b2\\u03b7\\u03b3\\u03b9\\u03ba\\u03ac (\\u039d\\u03bf\\u03c1\\u03b2\\u03b7\\u03b3\\u03af\\u03b1, NY)", - "\\u039A\\u03B9\\u03BD\\u03B5\\u03B6\\u03B9\\u03BA\\u03AC (\\u039a\\u03b9\\u03bd\\u03b5\\u03b6\\u03b9\\u03ba\\u03cc \\u0391\\u03c0\\u03bb\\u03bf\\u03c0\\u03bf\\u03b9\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf, \\u039A\\u03AF\\u03BD\\u03B1)", - "\\u0393\\u03B5\\u03C1\\u03BC\\u03B1\\u03BD\\u03B9\\u03BA\\u03AC (\\u0393\\u03B5\\u03C1\\u03BC\\u03B1\\u03BD\\u03AF\\u03B1, \\u03A4\\u03B1\\u03BA\\u03C4\\u03BF\\u03C0\\u03BF\\u03AF\\u03B7\\u03C3\\u03B7=\\u03A3\\u03B5\\u03B9\\u03C1\\u03AC \\u03A4\\u03B7\\u03BB\\u03B5\\u03C6\\u03C9\\u03BD\\u03B9\\u03BA\\u03BF\\u03CD \\u039A\\u03B1\\u03C4\\u03B1\\u03BB\\u03CC\\u03B3\\u03BF\\u03C5)", - "\\u0399\\u03C3\\u03C0\\u03B1\\u03BD\\u03B9\\u03BA\\u03AC (\\u03A4\\u03B1\\u03BA\\u03C4\\u03BF\\u03C0\\u03BF\\u03AF\\u03B7\\u03C3\\u03B7\\u003D\\u03A0\\u03B1\\u03C1\\u03B1\\u03B4\\u03BF\\u03C3\\u03B9\\u03B1\\u03BA\\u03AE \\u03A3\\u03B5\\u03B9\\u03C1\\u03AC)", - "\\u0399\\u03B1\\u03C0\\u03C9\\u03BD\\u03B9\\u03BA\\u03AC (\\u0399\\u03B1\\u03C0\\u03C9\\u03BD\\u03AF\\u03B1, \\u0397\\u03BC\\u03B5\\u03C1\\u03BF\\u03BB\\u03CC\\u03B3\\u03B9\\u03BF=\\u0399\\u03B1\\u03C0\\u03C9\\u03BD\\u03B9\\u03BA\\u03CC \\u0397\\u03BC\\u03B5\\u03C1\\u03BF\\u03BB\\u03CC\\u03B3\\u03B9\\u03BF)" + "\\u039A\\u03B9\\u03BD\\u03B5\\u03B6\\u03B9\\u03BA\\u03AC (\\u0391\\u03c0\\u03bb\\u03bf\\u03c0\\u03bf\\u03b9\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf \\u039a\\u03b9\\u03bd\\u03b5\\u03b6\\u03b9\\u03ba\\u03cc, \\u039A\\u03AF\\u03BD\\u03B1)", + "\\u0393\\u03B5\\u03C1\\u03BC\\u03B1\\u03BD\\u03B9\\u03BA\\u03AC (\\u0393\\u03B5\\u03C1\\u03BC\\u03B1\\u03BD\\u03AF\\u03B1, \\u03C4\\u03B1\\u03BA\\u03C4\\u03BF\\u03C0\\u03BF\\u03AF\\u03B7\\u03C3\\u03B7=\\u03A3\\u03B5\\u03B9\\u03C1\\u03AC \\u03C4\\u03B1\\u03BE\\u03B9\\u03BD\\u03CC\\u03BC\\u03B7\\u03C3\\u03B7\\u03C2 \\u03C4\\u03B7\\u03BB\\u03B5\\u03C6\\u03C9\\u03BD\\u03B9\\u03BA\\u03BF\\u03CD \\u03BA\\u03B1\\u03C4\\u03B1\\u03BB\\u03CC\\u03B3\\u03BF\\u03C5)", + "\\u0399\\u03C3\\u03C0\\u03B1\\u03BD\\u03B9\\u03BA\\u03AC (\\u03C4\\u03B1\\u03BA\\u03C4\\u03BF\\u03C0\\u03BF\\u03AF\\u03B7\\u03C3\\u03B7=\\u03A0\\u03B1\\u03C1\\u03B1\\u03B4\\u03BF\\u03C3\\u03B9\\u03B1\\u03BA\\u03AE \\u03C3\\u03B5\\u03B9\\u03C1\\u03AC \\u03C4\\u03B1\\u03BE\\u03B9\\u03BD\\u03CC\\u03BC\\u03B7\\u03C3\\u03B7\\u03C2)", + "\\u0399\\u03B1\\u03C0\\u03C9\\u03BD\\u03B9\\u03BA\\u03AC (\\u0399\\u03B1\\u03C0\\u03C9\\u03BD\\u03AF\\u03B1, \\u03B7\\u03BC\\u03B5\\u03C1\\u03BF\\u03BB\\u03CC\\u03B3\\u03B9\\u03BF=\\u0399\\u03B1\\u03C0\\u03C9\\u03BD\\u03B9\\u03BA\\u03CC \\u03B7\\u03BC\\u03B5\\u03C1\\u03BF\\u03BB\\u03CC\\u03B3\\u03B9\\u03BF)" } }; @@ -600,8 +600,8 @@ static void TestDisplayNames() "el_GR" }; static const char *expect[] = { "Spanish (calendar=Japanese Calendar, collation=Traditional Sort Order)", /* note sorted order of keywords */ "espagnol (Calendrier=Calendrier japonais, Ordonnancement=Ordre traditionnel)", - "espanyol (calendari=calendari japon\\u00e8s, ordre alfab\\u00e8tic=traditional)", - "\\u0399\\u03C3\\u03C0\\u03B1\\u03BD\\u03B9\\u03BA\\u03AC (\\u0397\\u03BC\\u03B5\\u03C1\\u03BF\\u03BB\\u03CC\\u03B3\\u03B9\\u03BF=\\u0399\\u03B1\\u03C0\\u03C9\\u03BD\\u03B9\\u03BA\\u03CC \\u0397\\u03BC\\u03B5\\u03C1\\u03BF\\u03BB\\u03CC\\u03B3\\u03B9\\u03BF, \\u03A4\\u03B1\\u03BA\\u03C4\\u03BF\\u03C0\\u03BF\\u03AF\\u03B7\\u03C3\\u03B7=\\u03A0\\u03B1\\u03C1\\u03B1\\u03B4\\u03BF\\u03C3\\u03B9\\u03B1\\u03BA\\u03AE \\u03A3\\u03B5\\u03B9\\u03C1\\u03AC)" }; + "espanyol (calendari=calendari japon\\u00e8s, ordre alfab\\u00e8tic=ordre tradicional)", + "\\u0399\\u03C3\\u03C0\\u03B1\\u03BD\\u03B9\\u03BA\\u03AC (\\u03B7\\u03BC\\u03B5\\u03C1\\u03BF\\u03BB\\u03CC\\u03B3\\u03B9\\u03BF=\\u0399\\u03B1\\u03C0\\u03C9\\u03BD\\u03B9\\u03BA\\u03CC \\u03B7\\u03BC\\u03B5\\u03C1\\u03BF\\u03BB\\u03CC\\u03B3\\u03B9\\u03BF, \\u03C4\\u03B1\\u03BA\\u03C4\\u03BF\\u03C0\\u03BF\\u03AF\\u03B7\\u03C3\\u03B7=\\u03A0\\u03B1\\u03C1\\u03B1\\u03B4\\u03BF\\u03C3\\u03B9\\u03B1\\u03BA\\u03AE \\u03C3\\u03B5\\u03B9\\u03C1\\u03AC \\u03C4\\u03B1\\u03BE\\u03B9\\u03BD\\u03CC\\u03BC\\u03B7\\u03C3\\u03B7\\u03C2)" }; UChar *expectBuffer; for(i=0;itoPattern(pattern); dateReturned.remove(); dateReturned = format->format(sampleDate, dateReturned, status); - expectedResult=UnicodeString("Donnerstag, 14. Oktober 1999 08:58:59 Frankreich"); + expectedResult=CharsToUnicodeString("Donnerstag, 14. Oktober 1999 08:58:59 Mitteleurop\\u00E4ische Sommerzeit"); if ( dateReturned != expectedResult ) { errln("ERROR: Simple test uses full date format."); errln(UnicodeString(" Got: ") + dateReturned + UnicodeString(" Expected: ") + expectedResult); diff --git a/icu4c/source/test/intltest/loctest.cpp b/icu4c/source/test/intltest/loctest.cpp index 9dcc2674822..82969682dbf 100644 --- a/icu4c/source/test/intltest/loctest.cpp +++ b/icu4c/source/test/intltest/loctest.cpp @@ -1,6 +1,6 @@ /******************************************************************** * COPYRIGHT: - * Copyright (c) 1997-2008, International Business Machines Corporation and + * Copyright (c) 1997-2009, International Business Machines Corporation and * others. All Rights Reserved. ********************************************************************/ @@ -64,13 +64,13 @@ static const char* const rawData[33][8] = { /* display language (Catalan) */ { "angl\\u00E8s", "franc\\u00E8s", "catal\\u00E0", "grec", "noruec", "itali\\u00E0", "", "xin\\u00E8s" }, /* display script (Catalan) */ - { "", "", "", "", "", "", "", "Xin\\u00E8s Simplificat (Han)" }, + { "", "", "", "", "", "", "", "xin\\u00E8s simplificat" }, /* display country (Catalan) */ { "Estats Units", "Fran\\u00E7a", "Espanya", "Gr\\u00E8cia", "Noruega", "", "", "Xina" }, /* display variant (Catalan) */ { "", "", "", "", "NY", "", "" }, /* display name (Catalan) */ - { "angl\\u00E8s (Estats Units)", "franc\\u00E8s (Fran\\u00E7a)", "catal\\u00E0 (Espanya)", "grec (Gr\\u00E8cia)", "noruec (Noruega, NY)", "itali\\u00E0", "", "xin\\u00E8s (Xin\\u00E8s Simplificat (Han), Xina)" }, + { "angl\\u00E8s (Estats Units)", "franc\\u00E8s (Fran\\u00E7a)", "catal\\u00E0 (Espanya)", "grec (Gr\\u00E8cia)", "noruec (Noruega, NY)", "itali\\u00E0", "", "xin\\u00E8s (xin\\u00E8s simplificat, Xina)" }, // display langage (Greek)[actual values listed below] { "\\u0391\\u03b3\\u03b3\\u03bb\\u03b9\\u03ba\\u03ac", @@ -83,9 +83,9 @@ static const char* const rawData[33][8] = { "\\u039A\\u03B9\\u03BD\\u03B5\\u03B6\\u03B9\\u03BA\\u03AC" }, // display script (Greek) - { "", "", "", "", "", "", "", "\\u039a\\u03b9\\u03bd\\u03b5\\u03b6\\u03b9\\u03ba\\u03cc \\u0391\\u03c0\\u03bb\\u03bf\\u03c0\\u03bf\\u03b9\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf" }, + { "", "", "", "", "", "", "", "\\u0391\\u03c0\\u03bb\\u03bf\\u03c0\\u03bf\\u03b9\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf \\u039a\\u03b9\\u03bd\\u03b5\\u03b6\\u03b9\\u03ba\\u03cc" }, // display country (Greek)[actual values listed below] - { "\\u0397\\u03BD\\u03C9\\u03BC\\u03AD\\u03BD\\u03B5\\u03C2 \\u03A0\\u03BF\\u03BB\\u03B9\\u03C4\\u03B5\\u03AF\\u03B5\\u03C2", + { "\\u0397\\u03BD\\u03C9\\u03BC\\u03AD\\u03BD\\u03B5\\u03C2 \\u03A0\\u03BF\\u03BB\\u03B9\\u03C4\\u03B5\\u03AF\\u03B5\\u03C2 \\u03C4\\u03B7\\u03C2 \\u0391\\u03BC\\u03B5\\u03C1\\u03B9\\u03BA\\u03AE\\u03C2", "\\u0393\\u03b1\\u03bb\\u03bb\\u03af\\u03b1", "\\u0399\\u03c3\\u03c0\\u03b1\\u03bd\\u03af\\u03b1", "\\u0395\\u03bb\\u03bb\\u03ac\\u03b4\\u03b1", @@ -97,14 +97,14 @@ static const char* const rawData[33][8] = { // display variant (Greek) { "", "", "", "", "NY", "", "" }, // display name (Greek)[actual values listed below] - { "\\u0391\\u03b3\\u03b3\\u03bb\\u03b9\\u03ba\\u03ac (\\u0397\\u03BD\\u03C9\\u03BC\\u03AD\\u03BD\\u03B5\\u03C2 \\u03A0\\u03BF\\u03BB\\u03B9\\u03C4\\u03B5\\u03AF\\u03B5\\u03C2)", + { "\\u0391\\u03b3\\u03b3\\u03bb\\u03b9\\u03ba\\u03ac (\\u0397\\u03BD\\u03C9\\u03BC\\u03AD\\u03BD\\u03B5\\u03C2 \\u03A0\\u03BF\\u03BB\\u03B9\\u03C4\\u03B5\\u03AF\\u03B5\\u03C2 \\u03C4\\u03B7\\u03C2 \\u0391\\u03BC\\u03B5\\u03C1\\u03B9\\u03BA\\u03AE\\u03C2)", "\\u0393\\u03b1\\u03bb\\u03bb\\u03b9\\u03ba\\u03ac (\\u0393\\u03b1\\u03bb\\u03bb\\u03af\\u03b1)", "\\u039a\\u03b1\\u03c4\\u03b1\\u03bb\\u03b1\\u03bd\\u03b9\\u03ba\\u03ac (\\u0399\\u03c3\\u03c0\\u03b1\\u03bd\\u03af\\u03b1)", "\\u0395\\u03bb\\u03bb\\u03b7\\u03bd\\u03b9\\u03ba\\u03ac (\\u0395\\u03bb\\u03bb\\u03ac\\u03b4\\u03b1)", "\\u039d\\u03bf\\u03c1\\u03b2\\u03b7\\u03b3\\u03b9\\u03ba\\u03ac (\\u039d\\u03bf\\u03c1\\u03b2\\u03b7\\u03b3\\u03af\\u03b1, NY)", "\\u0399\\u03c4\\u03b1\\u03bb\\u03b9\\u03ba\\u03ac", "", - "\\u039A\\u03B9\\u03BD\\u03B5\\u03B6\\u03B9\\u03BA\\u03AC (\\u039a\\u03b9\\u03bd\\u03b5\\u03b6\\u03b9\\u03ba\\u03cc \\u0391\\u03c0\\u03bb\\u03bf\\u03c0\\u03bf\\u03b9\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf, \\u039A\\u03AF\\u03BD\\u03B1)" + "\\u039A\\u03B9\\u03BD\\u03B5\\u03B6\\u03B9\\u03BA\\u03AC (\\u0391\\u03c0\\u03bb\\u03bf\\u03c0\\u03bf\\u03b9\\u03b7\\u03bc\\u03ad\\u03bd\\u03bf \\u039a\\u03b9\\u03bd\\u03b5\\u03b6\\u03b9\\u03ba\\u03cc, \\u039A\\u03AF\\u03BD\\u03B1)" }, // display langage () @@ -860,8 +860,8 @@ LocaleTest::TestGetLangsAndCountries() ; /* TODO: Change this test to be more like the cloctst version? */ - if (testCount != 489) - errln("Expected getISOLanguages() to return 489 languages; it returned %d", testCount); + if (testCount != 490) + errln("Expected getISOLanguages() to return 490 languages; it returned %d", testCount); else { for (i = 0; i < 15; i++) { int32_t j; diff --git a/icu4c/source/test/intltest/numfmtst.cpp b/icu4c/source/test/intltest/numfmtst.cpp index ca8c48e9af0..f2dcdecf067 100644 --- a/icu4c/source/test/intltest/numfmtst.cpp +++ b/icu4c/source/test/intltest/numfmtst.cpp @@ -788,7 +788,7 @@ void NumberFormatTest::TestCurrencyObject() { 1234.56, CharsToUnicodeString("1 235 \\u00A5JP")); // Yen expectCurrency(*fmt, Locale("fr", "CH", ""), - 1234.56, "1 234,55 sFr."); // 0.05 rounding + 1234.56, "1 234,55 CHF"); // 0.05 rounding expectCurrency(*fmt, Locale::getUS(), 1234.56, "1 234,56 $US"); @@ -2634,8 +2634,8 @@ void NumberFormatTest::TestNumberingSystems() { UErrorCode ec = U_ZERO_ERROR; Locale loc1("en", "US", "", "numbers=thai"); - Locale loc2("en", "US", "", "numbers=hebrew"); - Locale loc3("en", "US", "", "numbers=persian"); + Locale loc2("en", "US", "", "numbers=hebr"); + Locale loc3("en", "US", "", "numbers=arabext"); Locale loc4("en", "US", "", "numbers=foobar"); NumberFormat* fmt1= NumberFormat::createInstance(loc1, ec); @@ -2644,11 +2644,11 @@ void NumberFormatTest::TestNumberingSystems() { } NumberFormat* fmt2= NumberFormat::createInstance(loc2, ec); if (U_FAILURE(ec)) { - errln("FAIL: getInstance(en_US@numbers=hebrew)"); + errln("FAIL: getInstance(en_US@numbers=hebr)"); } NumberFormat* fmt3= NumberFormat::createInstance(loc3, ec); if (U_FAILURE(ec)) { - errln("FAIL: getInstance(en_US@numbers=persian)"); + errln("FAIL: getInstance(en_US@numbers=arabext)"); } expect2(*fmt1, 1234.567, CharsToUnicodeString("\\u0E51,\\u0E52\\u0E53\\u0E54.\\u0E55\\u0E56\\u0E57")); @@ -2965,11 +2965,11 @@ NumberFormatTest::TestCurrencyParsing() { {"ar_EG", "1", "USD", "US$\\u00a0\\u0661\\u066b\\u0660\\u0660", "USD\\u00a0\\u0661\\u066b\\u0660\\u0660", "\\u0661\\u066b\\u0660\\u0660 \\u062f\\u0648\\u0644\\u0627\\u0631 \\u0623\\u0645\\u0631\\u064a\\u0643\\u064a"}, {"fa_CA", "1", "USD", "\\u06f1\\u066b\\u06f0\\u06f0\\u00a0US$", "\\u06f1\\u066b\\u06f0\\u06f0\\u00a0USD", "\\u06f1\\u066b\\u06f0\\u06f0\\u0020\\u062f\\u0644\\u0627\\u0631\\u0020\\u0627\\u0645\\u0631\\u06cc\\u06a9\\u0627"}, {"he_IL", "1", "USD", "1.00\\u00a0US$", "1.00\\u00a0USD", "1.00 \\u05d3\\u05d5\\u05dc\\u05e8 \\u05d0\\u05de\\u05e8\\u05d9\\u05e7\\u05d0\\u05d9"}, - {"hr_HR", "1", "USD", "1,00\\u00a0US$", "1,00\\u00a0USD", "1,00 Ameri\\u010dki dolar"}, + {"hr_HR", "1", "USD", "1,00\\u00a0$", "1,00\\u00a0USD", "1,00 Ameri\\u010dki dolar"}, {"id_ID", "1", "USD", "US$1,00", "USD1,00", "1,00 USD"}, {"it_IT", "1", "USD", "US$\\u00a01,00", "USD\\u00a01,00", "1,00 Dollaro Statunitense"}, {"ko_KR", "1", "USD", "US$1.00", "USD1.00", "1.00 \\ubbf8\\uad6d \\ub2ec\\ub7ec"}, - {"ja_JP", "1", "USD", "US$1.00", "USD1.00", "1.00 \\u7c73\\u30c9\\u30eb"}, + {"ja_JP", "1", "USD", "$1.00", "USD1.00", "1.00 \\u7c73\\u30c9\\u30eb"}, {"zh_CN", "1", "CNY", "\\uFFE51.00", "CNY1.00", "1.00 \\u4EBA\\u6C11\\u5E01"}, {"zh_TW", "1", "CNY", "\\uFFE51.00", "CNY1.00", "1.00 \\u4eba\\u6c11\\u5e63"}, {"ru_RU", "1", "RUB", "1,00\\u00A0\\u0440\\u0443\\u0431.", "1,00\\u00A0RUB", "1,00 \\u0420\\u043E\\u0441\\u0441\\u0438\\u0439\\u0441\\u043A\\u0438\\u0439 \\u0440\\u0443\\u0431\\u043B\\u044C"}, diff --git a/icu4c/source/test/intltest/sdtfmtts.cpp b/icu4c/source/test/intltest/sdtfmtts.cpp index 96cfd22607a..da1388d1724 100644 --- a/icu4c/source/test/intltest/sdtfmtts.cpp +++ b/icu4c/source/test/intltest/sdtfmtts.cpp @@ -59,8 +59,8 @@ void IntlTestSimpleDateFormatAPI::testAPI(/*char *par*/) status = U_ZERO_ERROR; const UnicodeString pattern("yyyy.MM.dd G 'at' hh:mm:ss z"); - const UnicodeString override("y=hebrew;d=thai;s=arabic"); - const UnicodeString override_bogus("y=hebrew;d=thai;s=bogus"); + const UnicodeString override("y=hebr;d=thai;s=arab"); + const UnicodeString override_bogus("y=hebr;d=thai;s=bogus"); SimpleDateFormat pat(pattern, status); if(U_FAILURE(status)) { diff --git a/icu4c/source/test/intltest/tmsgfmt.cpp b/icu4c/source/test/intltest/tmsgfmt.cpp index c473fc59d60..99c05bfc077 100644 --- a/icu4c/source/test/intltest/tmsgfmt.cpp +++ b/icu4c/source/test/intltest/tmsgfmt.cpp @@ -429,7 +429,7 @@ void TestMessageFormat::TestTurkishCasing() } const UnicodeString expected( - "At 12:20:00 on 08 08 1997, there was a disturbance in the Force on planet 7.", ""); + "At 12:20:00 on 08.08.1997, there was a disturbance in the Force on planet 7.", ""); if (result != expected) { errln("TestTurkishCasing failed on test"); errln( UnicodeString(" Result: ") + result ); diff --git a/icu4c/source/test/testdata/format.txt b/icu4c/source/test/testdata/format.txt index 1ff37cdbd27..bad02a171fa 100644 --- a/icu4c/source/test/testdata/format.txt +++ b/icu4c/source/test/testdata/format.txt @@ -1,4 +1,4 @@ -// Copyright (c) 2007-2008 International Business Machines +// Copyright (c) 2007-2009 International Business Machines // Corporation and others. All Rights Reserved. format:table(nofallback) { Info { @@ -404,7 +404,7 @@ format:table(nofallback) { "en_US@calendar=hebrew", "DATE=FULL,TIME=FULL", "MILLIS=3076424179200000", - "Friday, Heshvan 3, 103217 12:00:00 AM United States (Los Angeles)" + "Friday, Heshvan 3, 103217 12:00:00 AM GMT-08:00" }, } } diff --git a/icu4c/source/test/testdata/structLocale.txt b/icu4c/source/test/testdata/structLocale.txt index 1cea6c7dd22..e23f09e98e5 100644 --- a/icu4c/source/test/testdata/structLocale.txt +++ b/icu4c/source/test/testdata/structLocale.txt @@ -582,6 +582,10 @@ structLocale:table(nofallback){ "", "", } + CUC{ + "", + "", + } CUP{ "", "", @@ -1988,6 +1992,14 @@ structLocale:table(nofallback){ many{""} other{""} } + CNX{ + zero{""} + one{""} + two{""} + few{""} + many{""} + other{""} + } CNY{ zero{""} one{""} @@ -2036,6 +2048,14 @@ structLocale:table(nofallback){ many{""} other{""} } + CUC{ + zero{""} + one{""} + two{""} + few{""} + many{""} + other{""} + } CUP{ zero{""} one{""} @@ -4307,6 +4327,7 @@ structLocale:table(nofallback){ tog{""} tpi{""} tr{""} + trv{""} ts{""} tsi{""} tt{""} @@ -4550,6 +4571,7 @@ structLocale:table(nofallback){ 1606NICT{""} 1694ACAD{""} 1901{""} + 1959ACAD{""} 1994{""} 1996{""} AREVELA{""} @@ -4559,18 +4581,16 @@ structLocale:table(nofallback){ BOONT{""} FONIPA{""} FONUPA{""} - GAULISH{""} - GUOYU{""} - HAKKA{""} + KKCOR{""} LIPAW{""} - LOJBAN{""} MONOTON{""} NEDIS{""} NJIVA{""} OSOJS{""} - POSIX{""} + PINYIN{""} POLYTON{""} POLYTONI{""} + POSIX{""} REVISED{""} ROZAJ{""} SAAHO{""} @@ -4578,8 +4598,10 @@ structLocale:table(nofallback){ SCOUSE{""} SOLBA{""} TARASK{""} + UCCOR{""} + UCRCOR{""} VALENCIA{""} - XIANG{""} + WADEGILE{""} } Version{""} boundaries{ @@ -4619,6 +4641,7 @@ structLocale:table(nofallback){ "", "", "", + "", "A4", "A4", "A4", @@ -4665,11 +4688,96 @@ structLocale:table(nofallback){ "", "", "", + "", "A4", "A4", "A4", "A4", } + intervalFormats{ + M{ + M{""} + } + MEd{ + M{""} + d{""} + } + MMM{ + M{""} + } + MMMEd{ + M{""} + d{""} + } + MMMM{ + M{""} + } + MMMd{ + M{""} + d{""} + } + Md{ + M{""} + d{""} + } + d{ + d{""} + } + fallback{""} + h{ + a{""} + h{""} + } + hm{ + a{""} + h{""} + m{""} + } + hmv{ + a{""} + h{""} + m{""} + } + hv{ + a{""} + h{""} + } + y{ + y{""} + } + yM{ + M{""} + y{""} + } + yMEd{ + M{""} + d{""} + y{""} + } + yMMM{ + M{""} + y{""} + } + yMMMEd{ + M{""} + d{""} + y{""} + } + yMMMM{ + M{""} + y{""} + } + yMMMd{ + M{""} + d{""} + y{""} + } + yMd{ + M{""} + d{""} + y{""} + } + } monthNames{ default{""} format{ @@ -4798,6 +4906,90 @@ structLocale:table(nofallback){ "" } } + intervalFormats{ + M{ + M{""} + } + MEd{ + M{""} + d{""} + } + MMM{ + M{""} + } + MMMEd{ + M{""} + d{""} + } + MMMM{ + M{""} + } + MMMd{ + M{""} + d{""} + } + Md{ + M{""} + d{""} + } + d{ + d{""} + } + fallback{""} + h{ + a{""} + h{""} + } + hm{ + a{""} + h{""} + m{""} + } + hmv{ + a{""} + h{""} + m{""} + } + hv{ + a{""} + h{""} + } + y{ + y{""} + } + yM{ + M{""} + y{""} + } + yMEd{ + M{""} + d{""} + y{""} + } + yMMM{ + M{""} + y{""} + } + yMMMEd{ + M{""} + d{""} + y{""} + } + yMMMM{ + M{""} + y{""} + } + yMMMd{ + M{""} + d{""} + y{""} + } + yMd{ + M{""} + d{""} + y{""} + } + } monthNames{ format{ abbreviated{ @@ -4868,6 +5060,90 @@ structLocale:table(nofallback){ "" } } + intervalFormats{ + M{ + M{""} + } + MEd{ + M{""} + d{""} + } + MMM{ + M{""} + } + MMMEd{ + M{""} + d{""} + } + MMMM{ + M{""} + } + MMMd{ + M{""} + d{""} + } + Md{ + M{""} + d{""} + } + d{ + d{""} + } + fallback{""} + h{ + a{""} + h{""} + } + hm{ + a{""} + h{""} + m{""} + } + hmv{ + a{""} + h{""} + m{""} + } + hv{ + a{""} + h{""} + } + y{ + y{""} + } + yM{ + M{""} + y{""} + } + yMEd{ + M{""} + d{""} + y{""} + } + yMMM{ + M{""} + y{""} + } + yMMMEd{ + M{""} + d{""} + y{""} + } + yMMMM{ + M{""} + y{""} + } + yMMMd{ + M{""} + d{""} + y{""} + } + yMd{ + M{""} + d{""} + y{""} + } + } monthNames{ format{ abbreviated{ @@ -4921,6 +5197,7 @@ structLocale:table(nofallback){ "", "", "", + "", "A4", "A4", "A4", @@ -5365,6 +5642,7 @@ structLocale:table(nofallback){ "A2", "A2", "A2", + "", "A4", "A4", "A4", @@ -5396,6 +5674,90 @@ structLocale:table(nofallback){ "", } } + intervalFormats{ + M{ + M{""} + } + MEd{ + M{""} + d{""} + } + MMM{ + M{""} + } + MMMEd{ + M{""} + d{""} + } + MMMM{ + M{""} + } + MMMd{ + M{""} + d{""} + } + Md{ + M{""} + d{""} + } + d{ + d{""} + } + fallback{""} + h{ + a{""} + h{""} + } + hm{ + a{""} + h{""} + m{""} + } + hmv{ + a{""} + h{""} + m{""} + } + hv{ + a{""} + h{""} + } + y{ + y{""} + } + yM{ + M{""} + y{""} + } + yMEd{ + M{""} + d{""} + y{""} + } + yMMM{ + M{""} + y{""} + } + yMMMEd{ + M{""} + d{""} + y{""} + } + yMMMM{ + M{""} + y{""} + } + yMMMd{ + M{""} + d{""} + y{""} + } + yMd{ + M{""} + d{""} + y{""} + } + } monthNames{ default{""} format{ @@ -5525,6 +5887,7 @@ structLocale:table(nofallback){ "", "", "", + "", "A4", "A4", "A4", @@ -5541,6 +5904,90 @@ structLocale:table(nofallback){ "", } } + intervalFormats{ + M{ + M{""} + } + MEd{ + M{""} + d{""} + } + MMM{ + M{""} + } + MMMEd{ + M{""} + d{""} + } + MMMM{ + M{""} + } + MMMd{ + M{""} + d{""} + } + Md{ + M{""} + d{""} + } + d{ + d{""} + } + fallback{""} + h{ + a{""} + h{""} + } + hm{ + a{""} + h{""} + m{""} + } + hmv{ + a{""} + h{""} + m{""} + } + hv{ + a{""} + h{""} + } + y{ + y{""} + } + yM{ + M{""} + y{""} + } + yMEd{ + M{""} + d{""} + y{""} + } + yMMM{ + M{""} + y{""} + } + yMMMEd{ + M{""} + d{""} + y{""} + } + yMMMM{ + M{""} + y{""} + } + yMMMd{ + M{""} + d{""} + y{""} + } + yMd{ + M{""} + d{""} + y{""} + } + } monthNames{ default{""} format{ @@ -5668,6 +6115,7 @@ structLocale:table(nofallback){ "", "", "", + "", "A4", "A4", "A4", @@ -5684,6 +6132,90 @@ structLocale:table(nofallback){ "", } } + intervalFormats{ + M{ + M{""} + } + MEd{ + M{""} + d{""} + } + MMM{ + M{""} + } + MMMEd{ + M{""} + d{""} + } + MMMM{ + M{""} + } + MMMd{ + M{""} + d{""} + } + Md{ + M{""} + d{""} + } + d{ + d{""} + } + fallback{""} + h{ + a{""} + h{""} + } + hm{ + a{""} + h{""} + m{""} + } + hmv{ + a{""} + h{""} + m{""} + } + hv{ + a{""} + h{""} + } + y{ + y{""} + } + yM{ + M{""} + y{""} + } + yMEd{ + M{""} + d{""} + y{""} + } + yMMM{ + M{""} + y{""} + } + yMMMEd{ + M{""} + d{""} + y{""} + } + yMMMM{ + M{""} + y{""} + } + yMMMd{ + M{""} + d{""} + y{""} + } + yMd{ + M{""} + d{""} + y{""} + } + } monthNames{ default{""} format{ @@ -5811,6 +6343,7 @@ structLocale:table(nofallback){ "", "", "", + "", "A4", "A4", "A4", @@ -5827,6 +6360,90 @@ structLocale:table(nofallback){ "", } } + intervalFormats{ + M{ + M{""} + } + MEd{ + M{""} + d{""} + } + MMM{ + M{""} + } + MMMEd{ + M{""} + d{""} + } + MMMM{ + M{""} + } + MMMd{ + M{""} + d{""} + } + Md{ + M{""} + d{""} + } + d{ + d{""} + } + fallback{""} + h{ + a{""} + h{""} + } + hm{ + a{""} + h{""} + m{""} + } + hmv{ + a{""} + h{""} + m{""} + } + hv{ + a{""} + h{""} + } + y{ + y{""} + } + yM{ + M{""} + y{""} + } + yMEd{ + M{""} + d{""} + y{""} + } + yMMM{ + M{""} + y{""} + } + yMMMEd{ + M{""} + d{""} + y{""} + } + yMMMM{ + M{""} + y{""} + } + yMMMd{ + M{""} + d{""} + y{""} + } + yMd{ + M{""} + d{""} + y{""} + } + } monthNames{ default{""} format{ @@ -5951,6 +6568,7 @@ structLocale:table(nofallback){ "", "", "", + "", "A4", "A4", "A4", @@ -6702,6 +7320,7 @@ structLocale:table(nofallback){ "", "", "", + "", "A4", "A4", "A4", @@ -6721,6 +7340,90 @@ structLocale:table(nofallback){ "" } } + intervalFormats{ + M{ + M{""} + } + MEd{ + M{""} + d{""} + } + MMM{ + M{""} + } + MMMEd{ + M{""} + d{""} + } + MMMM{ + M{""} + } + MMMd{ + M{""} + d{""} + } + Md{ + M{""} + d{""} + } + d{ + d{""} + } + fallback{""} + h{ + a{""} + h{""} + } + hm{ + a{""} + h{""} + m{""} + } + hmv{ + a{""} + h{""} + m{""} + } + hv{ + a{""} + h{""} + } + y{ + y{""} + } + yM{ + M{""} + y{""} + } + yMEd{ + M{""} + d{""} + y{""} + } + yMMM{ + M{""} + y{""} + } + yMMMEd{ + M{""} + d{""} + y{""} + } + yMMMM{ + M{""} + y{""} + } + yMMMd{ + M{""} + d{""} + y{""} + } + yMd{ + M{""} + d{""} + y{""} + } + } } } layout{