| // ******************************************************************************* |
| // * |
| // * Copyright (C) 1997-2001, International Business Machines |
| // * Corporation and others. All Rights Reserved. |
| // * |
| // ******************************************************************************* |
| |
| el { |
| Version { "1.0.1" } |
| AmPmMarkers { |
| "\u03C0\u03BC", |
| "\u03BC\u03BC", |
| } |
| CollationElements { |
| Version { "2.0" } |
| Override { "FALSE" } |
| Normalize { "TRUE" } |
| Sequence { "[normalization on]" } |
| } |
| Countries { |
| GR { "\u0395\u03BB\u03BB\u03AC\u03B4\u03B1" } |
| } |
| DateTimeElements { |
| "2", |
| "1", |
| } |
| DateTimePatterns { |
| "h:mm:ss a z", |
| "h:mm:ss a z", |
| "h:mm:ss a", |
| "h:mm a", |
| "EEEE, d MMMM yyyy", |
| "d MMMM yyyy", |
| "d MMM yyyy", |
| "d/M/yyyy", |
| "{1} {0}", |
| } |
| DayAbbreviations { |
| "\u039A\u03C5\u03C1", |
| "\u0394\u03B5\u03C5", |
| "\u03A4\u03C1\u03B9", |
| "\u03A4\u03B5\u03C4", |
| "\u03A0\u03B5\u03BC", |
| "\u03A0\u03B1\u03C1", |
| "\u03A3\u03B1\u03B2", |
| } |
| DayNames { |
| "\u039A\u03C5\u03C1\u03B9\u03B1\u03BA\u03AE", |
| "\u0394\u03B5\u03C5\u03C4\u03AD\u03C1\u03B1", |
| "\u03A4\u03C1\u03AF\u03C4\u03B7", |
| "\u03A4\u03B5\u03C4\u03AC\u03C1\u03C4\u03B7", |
| "\u03A0\u03AD\u03BC\u03C0\u03C4\u03B7", |
| "\u03A0\u03B1\u03C1\u03B1\u03C3\u03BA\u03B5\u03C5\u03AE", |
| "\u03A3\u03AC\u03B2\u03B2\u03B1\u03C4\u03BF", |
| } |
| Languages { |
| el { "\u03B5\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC" } |
| } |
| LocaleID { "08" } |
| LocaleString { "el" } |
| MonthAbbreviations { |
| "\u0399\u03B1\u03BD", |
| "\u03A6\u03B5\u03B2", |
| "\u039C\u03B1\u03C1", |
| "\u0391\u03C0\u03C1", |
| "\u039C\u03B1\u03CA", |
| "\u0399\u03BF\u03C5\u03BD", |
| "\u0399\u03BF\u03C5\u03BB", |
| "\u0391\u03C5\u03B3", |
| "\u03A3\u03B5\u03C0", |
| "\u039F\u03BA\u03C4", |
| "\u039D\u03BF\u03B5", |
| "\u0394\u03B5\u03BA", |
| "", |
| } |
| MonthNames { |
| "\u0399\u03B1\u03BD\u03BF\u03C5\u03AC\u03C1\u03B9\u03BF\u03C2", |
| "\u03A6\u03B5\u03B2\u03C1\u03BF\u03C5\u03AC\u03C1\u03B9\u03BF\u03C2", |
| "\u039C\u03AC\u03C1\u03C4\u03B9\u03BF\u03C2", |
| "\u0391\u03C0\u03C1\u03AF\u03BB\u03B9\u03BF\u03C2", |
| "\u039C\u03AC\u03CA\u03BF\u03C2", |
| "\u0399\u03BF\u03CD\u03BD\u03B9\u03BF\u03C2", |
| "\u0399\u03BF\u03CD\u03BB\u03B9\u03BF\u03C2", |
| "\u0391\u03CD\u03B3\u03BF\u03C5\u03C3\u03C4\u03BF\u03C2", |
| "\u03A3\u03B5\u03C0\u03C4\u03AD\u03BC\u03B2\u03C1\u03B9\u03BF\u03C2", |
| "\u039F\u03BA\u03C4\u03CE\u03B2\u03C1\u03B9\u03BF\u03C2", |
| "\u039D\u03BF\u03AD\u03BC\u03B2\u03C1\u03B9\u03BF\u03C2", |
| "\u0394\u03B5\u03BA\u03AD\u03BC\u03B2\u03C1\u03B9\u03BF\u03C2", |
| "", |
| } |
| NumberElements { |
| ",", |
| ".", |
| ";", |
| "%", |
| "0", |
| "#", |
| "-", |
| "E", |
| "\u2030", |
| "\u221E", |
| "\uFFFD", |
| } |
| ShortLanguage { "ell" } |
| localPatternChars { "GanjkHmsSEDFwWxhKzAe" } |
| zoneStrings { |
| { |
| "Africa/Casablanca", |
| "GMT", |
| "GMT", |
| "GMT", |
| "GMT", |
| } |
| } |
| LocaleScript{ |
| "Grek" // ISO 15924 Name |
| } |
| |
| //------------------------------------------------------------ |
| // Rule Based Number Format Support |
| //------------------------------------------------------------ |
| |
| /* |
| * omit rules for Greek until we have complete and valid data. |
| |
| // * Spellout rules for Greek. Again in Greek we have to supply the words |
| // * for the multiples of 100 because they can't be derived algorithmically. |
| // * Also, the tens digit changes form when followed by a ones digit: an |
| // * accent mark disappears from the tens digit and moves to the ones digit. |
| // * Therefore, instead of using the [] notation, we actually have to use |
| // * two separate rules for each multiple of 10 to show the two forms of |
| // * the word. |
| |
| // Can someone supply me with information on negatives and decimals? |
| // I'm also missing the word for zero. Can someone clue me in? |
| |
| SpelloutRules { |
| "zero (incomplete data); \u03ad\u03bd\u03b1; \u03b4\u03cd\u03bf; \u03b4\u03c1\u03af\u03b1; " |
| "\u03c4\u03ad\u03c3\u03c3\u03b5\u03c1\u03b1; \u03c0\u03ad\u03bd\u03c4\u03b5; " |
| "\u03ad\u03be\u03b9; \u03b5\u03c0\u03c4\u03ac; \u03bf\u03ba\u03c4\u03ce; " |
| "\u03b5\u03bd\u03bd\u03ad\u03b1;\n" |
| "10: \u03b4\u03ad\u03ba\u03b1; " |
| "\u03ad\u03bd\u03b4\u03b5\u03ba\u03b1; \u03b4\u03ce\u03b4\u03b5\u03ba\u03b1; " |
| "\u03b4\u03b5\u03ba\u03b1>>;\n" |
| "20: \u03b5\u03af\u03ba\u03bf\u03c3\u03b9; \u03b5\u03b9\u03ba\u03bf\u03c3\u03b9>>;\n" |
| "30: \u03c4\u03c1\u03b9\u03ac\u03bd\u03c4\u03b1; \u03c4\u03c1\u03b9\u03b1\u03bd\u03c4\u03b1>>;\n" |
| "40: \u03c3\u03b1\u03c1\u03ac\u03bd\u03c4\u03b1; \u03c3\u03b1\u03c1\u03b1\u03bd\u03c4\u03b1>>;\n" |
| "50: \u03c0\u03b5\u03bd\u03ae\u03bd\u03c4\u03b1; \u03c0\u03b5\u03bd\u03b7\u03bd\u03c4\u03b1>>;\n" |
| "60: \u03b5\u03be\u03ae\u03bd\u03c4\u03b1; \u03b5\u03be\u03b7\u03bd\u03c4\u03b1>>;\n" |
| "70: \u03b5\u03b2\u03b4\u03bf\u03bc\u03ae\u03bd\u03c4\u03b1; " |
| "\u03b5\u03b2\u03b4\u03bf\u03bc\u03b7\u03bd\u03c4\u03b1>>;\n" |
| "80: \u03bf\u03b3\u03b4\u03cc\u03bd\u03c4\u03b1; \u03bf\u03b3\u03b4\u03bf\u03bd\u03c4\u03b1>>;\n" |
| "90: \u03b5\u03bd\u03bd\u03b5\u03bd\u03ae\u03bd\u03c4\u03b1; " |
| "\u03b5\u03bd\u03bd\u03b5\u03bd\u03b7\u03bd\u03c4\u03b1>>;\n" |
| "100: \u03b5\u03ba\u03b1\u03c4\u03cc[\u03bd >>];\n" |
| "200: \u03b4\u03b9\u03b1\u03ba\u03cc\u03c3\u03b9\u03b1[ >>];\n" |
| "300: \u03c4\u03c1\u03b9\u03b1\u03ba\u03cc\u03c3\u03b9\u03b1[ >>];\n" |
| "400: \u03c4\u03b5\u03c4\u03c1\u03b1\u03ba\u03cc\u03c3\u03b9\u03b1[ >>];\n" |
| "500: \u03c0\u03b5\u03bd\u03c4\u03b1\u03ba\u03cc\u03c3\u03b9\u03b1[ >>];\n" |
| "600: \u03b5\u03be\u03b1\u03ba\u03cc\u03c3\u03b9\u03b1[ >>];\n" |
| "700: \u03b5\u03c0\u03c4\u03b1\u03ba\u03cc\u03c3\u03b9\u03b1[ >>];\n" |
| "800: \u03bf\u03ba\u03c4\u03b1\u03ba\u03cc\u03c3\u03b9\u03b1[ >>];\n" |
| "900: \u03b5\u03bd\u03bd\u03b9\u03b1\u03ba\u03cc\u03c3\u03b9\u03b1[ >>];\n" |
| "1000: \u03c7\u03af\u03bb\u03b9\u03b1[ >>];\n" |
| "2000: << \u03c7\u03af\u03bb\u03b9\u03b1[ >>];\n" |
| "1,000,000: << \u03b5\u03ba\u03b1\u03c4\u03bf\u03bc\u03bc\u03b9\u03cc\u03c1\u03b9\u03bf[ >>];\n" |
| "1,000,000,000: << \u03b4\u03b9\u03c3\u03b5\u03ba\u03b1\u03c4\u03bf\u03bc\u03bc\u03b9\u03cc\u03c1\u03b9\u03bf[ >>];\n" |
| "1,000,000,000,000: =#,##0=" |
| } |
| */ |
| |
| TransliterateLATIN { |
| "UNGEGN", |
| |
| // Rules are predicated on running NFD first, and NFC afterwards |
| |
| ":: [\\u0000-\\u007F \\u00B7 [:Greek:] [:nonspacing mark:]] ;" |
| "::NFKD (NFC) ; " |
| |
| // For modern Greek. |
| |
| // Useful variables |
| |
| "$lower = [:Ll:] ; " |
| "$upper = [:Lu:] ; " |
| "$accent = [:M:] ; " |
| |
| "$macron = \u0304 ;" |
| "$ddot = \u0308 ;" |
| |
| "$lcgvowel = [\u03b1\u03b5\u03b7\u03b9\u03bf\u03c5\u03c9] ; " |
| "$ucgvowel = [\u0391\u0395\u0397\u0399\u039f\u03a5\u03a9] ; " |
| "$gvowel = [$lcgvowel $ucgvowel] ; " |
| "$lcgvowelC = [$lcgvowel $accent] ; " |
| |
| "$evowel = [aeiouyAEIOUY];" |
| "$vowel = [ $evowel $gvowel] ; " |
| |
| "$beforeLower = $accent * $lower ; " |
| |
| "$gammaLike = [\u0393\u039a\u039e\u03a7\u03b3\u03ba\u03be\u03c7\u03f0] ; " |
| "$egammaLike = [GKXCgkxc] ; " |
| "$smooth = \u0313 ; " |
| "$rough = \u0314 ; " |
| "$iotasub = \u0345 ; " |
| |
| "$softener = [\u03b2\u0392\u03b3\u0393\u03b4\u0394\u03b6\u0396\u03bb\u039b\u03bc\u039c\u03bd\u039d\u03c1\u03a1$gvowel] ;" |
| |
| "$under = \u0331;" |
| |
| "$caron = \u030C;" |
| |
| "$afterLetter = [:L:] [\\'[:M:]]* ;" |
| "$beforeLetter = [\\'[:M:]]* [:L:] ;" |
| |
| |
| // Fix punctuation |
| |
| "\\; <> \\? ;" |
| "\u00b7 <> \\: ;" |
| |
| // Fix any ancient characters that creep in |
| |
| "\u0342 > \u0301 ;" |
| "\u0302 > \u0301 ;" |
| "\u0300 > \u0301 ;" |
| "$smooth > ;" |
| "$rough > ;" |
| "$iotasub > ;" |
| "\u037A > ;" |
| |
| // need to have these up here so the rules don't mask |
| |
| "\u03b7 <> i $under ;" |
| "\u0397 <> I $under ;" |
| |
| "\u03a8 } $beforeLower <> Ps ; " |
| "\u03a8 <> PS ; " |
| "\u03c8 <> ps ; " |
| |
| "\u03c9 <> o $under ;" |
| "\u03a9 <> O $under;" |
| |
| // at begining or end of word, convert mp to b |
| |
| "[^[:L:][:M:]] { \u03bc\u03c0 > b ; " |
| "\u03bc\u03c0 } [^[:L:][:M:]] > b ; " |
| "[^[:L:][:M:]] { [\u039c\u03bc][\u03a0\u03c0] > B ; " |
| "[\u039c\u03bc][\u03a0\u03c0] } [^[:L:][:M:]] > B ;" |
| |
| "\u03bc\u03c0 < b ; " |
| "\u039c\u03c0 < B { $beforeLower ; " |
| "\u039c\u03a0 < B ; " |
| |
| // handle diphthongs ending with upsilon |
| |
| "$vowel { \u03c5 } $softener <> v $under ; " |
| "$vowel { \u03c5 } <> f $under; " |
| "\u03c5 <> y ; " |
| "$vowel { \u03a5 } $softener <> V $under ; " |
| "$vowel { \u03a5 <> U $under ; " |
| "\u03a5 <> Y ; " |
| |
| // NORMAL |
| |
| "\u03b1 <> a ; " |
| "\u0391 <> A ; " |
| |
| "\u03b2 <> v ; " |
| "\u0392 <> V ; " |
| |
| "\u03b3 } $gammaLike <> n } $egammaLike ; " |
| "\u03b3 <> g ; " |
| "\u0393 } $gammaLike <> N } $egammaLike ; " |
| "\u0393 <> G ; " |
| |
| "\u03b4 <> d ; " |
| "\u0394 <> D ; " |
| |
| "\u03b5 <> e ; " |
| "\u0395 <> E ; " |
| |
| "\u03b6 <> z ; " |
| "\u0396 <> Z ; " |
| |
| "\u03b8 <> th ; " |
| "\u0398 } $beforeLower <> Th ; " |
| "\u0398 <> TH ; " |
| |
| "\u03b9 <> i ; " |
| "\u0399 <> I ; " |
| |
| "\u03ba <> k ;" |
| "\u039a <> K ; " |
| |
| "\u03bb <> l ; " |
| "\u039b <> L ; " |
| |
| "\u03bc <> m ; " |
| "\u039c <> M ; " |
| |
| "\u03bd } $gammaLike > n\\' ; " |
| "\u03bd <> n ; " |
| "\u039d } $gammaLike <> N\\' ; " |
| "\u039d <> N ; " |
| |
| "\u03be <> x ; " |
| "\u039e <> X ; " |
| |
| "\u03bf <> o ; " |
| "\u039f <> O ; " |
| |
| "\u03c0 <> p ; " |
| "\u03a0 <> P ; " |
| |
| "\u03c1 <> r ; " |
| "\u03a1 <> R ; " |
| |
| "[Pp] { } \u03c2 > \\' ; " |
| "[Pp] { } \u03c3 > \\' ;" |
| |
| // Caron means exception |
| |
| // before a letter, initial |
| "\u03c2 } $beforeLetter <> s $under } $beforeLetter;" |
| "\u03c3 } $beforeLetter <> s } $beforeLetter;" |
| |
| // otherwise, after a letter = final |
| "$afterLetter { \u03c3 <> $afterLetter { s $under;" |
| "$afterLetter { \u03c2 <> $afterLetter { s ;" |
| |
| // otherwise (isolated) = initial |
| "\u03c2 <> s $under;" |
| "\u03c3 <> s ;" |
| |
| "[Pp] { \u03a3 <> \\'S ; " |
| "\u03a3 <> S ; " |
| |
| "\u03c4 <> t ; " |
| "\u03a4 <> T ; " |
| |
| "\u03c6 <> f ; " |
| "\u03a6 <> F ;" |
| |
| "\u03c7 <> ch ; " |
| "\u03a7 } $beforeLower <> Ch ; " |
| "\u03a7 <> CH ; " |
| |
| // Completeness for ASCII |
| |
| "$ignore = [[:Mark:]''] * ;" |
| |
| "| ch < h ;" |
| "| k < c ;" |
| "| i < j ;" |
| "| k < q ;" |
| "| y < u ;" |
| "| y < w ;" |
| |
| "| Ch < H ;" |
| "| K < C ;" |
| "| I < J ;" |
| "| K < Q ;" |
| "| Y < W ;" |
| "| Y < U ;" |
| |
| // Completeness for Greek |
| |
| "\u03d0 > | \u03b2 ;" |
| "\u03d1 > | \u03b8 ;" |
| "\u03d2 > | \u03a5 ;" |
| "\u03d5 > | \u03c6 ;" |
| "\u03d6 > | \u03c0 ;" |
| |
| "\u03f0 > | \u03ba ;" |
| "\u03f1 > | \u03c1 ;" |
| "\u03f2 > | \u03c3 ;" |
| "\u03f3 > j ;" |
| "\u03f4 > | \u0398 ;" |
| "\u03f5 > | \u03b5 ;" |
| "\u00B5 > | \u03BC ; " |
| |
| // delete any trailing ' marks used for roundtripping |
| |
| " < [\u03a0\u03c0] { \\' } [Ss] ;" |
| " < [\u039d\u03bd] { \\' } $egammaLike ;" |
| |
| "::NFC (NFKD) ; " |
| |
| ":: ([\\u0000-\\u007F [:Latin:] [:nonspacing mark:]]) ;" |
| } |
| } |