| // ******************************************************************************* |
| // * |
| // * Copyright (C) 1997-2001, International Business Machines |
| // * Corporation and others. All Rights Reserved. |
| // * |
| // ******************************************************************************* |
| |
| fr { |
| Version{"1.0.1"} |
| CollationElements { |
| Version { "1.0" } |
| Sequence { "[backwards 2]&A<<\u00e6/e<<<\u00c6/E" } |
| } |
| Countries { |
| AR { "Argentine" } |
| AT { "Autriche" } |
| AU { "Australie" } |
| BE { "Belgique" } |
| BM { "Bermudes" } |
| BR { "Br\u00E9zil" } |
| CA { "Canada" } |
| CH { "Suisse" } |
| CL { "Chili" } |
| CN { "Chine" } |
| CO { "Colombie" } |
| CU { "Cuba" } |
| CY { "Chypre" } |
| CZ { "R\u00E9publique Tch\u00e8que" } |
| DE { "Allemagne" } |
| DK { "Danemark" } |
| DO { "R\u00E9publique Dominicaine" } |
| DZ { "Alg\u00E9rie" } |
| ES { "Espagne" } |
| FI { "Finlande" } |
| FR { "France" } |
| GB { "Royaume Uni" } |
| GR { "Gr\u00E8ce" } |
| HR { "Croatie" } |
| ID { "Indon\u00E9sie" } |
| IE { "Irlande" } |
| IL { "Isra\u00EBl" } |
| IT { "Italie" } |
| JP { "Japon" } |
| MT { "Malte" } |
| MX { "Mexique" } |
| NL { "Pays-Bas" } |
| NO { "Norv\u00E8ge" } |
| NZ { "Nouvelle-Z\u00E9lande" } |
| PT { "Portugal" } |
| RU { "Russie" } |
| SE { "Su\u00E8de" } |
| TR { "Turquie" } |
| US { "\u00C9tats-Unis" } |
| VE { "Venezuela" } |
| YU { "Yougoslavie" } |
| ZA { "Afrique du Sud" } |
| } |
| |
| Languages { |
| root { "racine" } |
| cs { "tch\u00e8que" } |
| da { "danois" } |
| de { "allemand" } |
| el { "grec" } |
| en { "anglais" } |
| es { "espagnol" } |
| fi { "finnois" } |
| fr { "fran\u00E7ais" } |
| hr { "croate" } |
| it { "italien" } |
| ja { "japonais" } |
| mt { "maltais" } |
| nl { "hollandais" } // ne'erlandais ? |
| no { "norv\u00E9gien" } |
| pt { "portugais" } |
| ru { "russe" } |
| sv { "su\u00E9dois" } |
| tr { "turc" } |
| zh { "chinois" } |
| } |
| |
| DateTimeElements { |
| "2", |
| "1", |
| } |
| DateTimePatterns { |
| "HH' h 'mm z", |
| "HH:mm:ss z", |
| "HH:mm:ss", |
| "HH:mm", |
| "EEEE d MMMM yyyy", |
| "d MMMM yyyy", |
| "d MMM yy", |
| "dd/MM/yy", |
| "{1} {0}", |
| } |
| DayAbbreviations { |
| "dim.", |
| "lun.", |
| "mar.", |
| "mer.", |
| "jeu.", |
| "ven.", |
| "sam.", |
| } |
| DayNames { |
| "dimanche", |
| "lundi", |
| "mardi", |
| "mercredi", |
| "jeudi", |
| "vendredi", |
| "samedi", |
| } |
| |
| |
| Eras { |
| "av. J.-C.", |
| "ap. J.-C.", |
| } |
| LocaleID { "0c" } |
| LocaleString { "fr" } |
| MonthAbbreviations { |
| "janv.", |
| "f\u00E9vr.", |
| "mars", |
| "avr.", |
| "mai", |
| "juin", |
| "juil.", |
| "ao\u00FBt", |
| "sept.", |
| "oct.", |
| "nov.", |
| "d\u00E9c.", |
| "", |
| } |
| MonthNames { |
| "janvier", |
| "f\u00E9vrier", |
| "mars", |
| "avril", |
| "mai", |
| "juin", |
| "juillet", |
| "ao\u00FBt", |
| "septembre", |
| "octobre", |
| "novembre", |
| "d\u00E9cembre", |
| "", |
| } |
| NumberElements { |
| ",", |
| "\u00A0", |
| ";", |
| "%", |
| "0", |
| "#", |
| "-", |
| "E", |
| "\u2030", |
| "\u221E", |
| "\uFFFD", |
| } |
| NumberPatterns { |
| "#,##0.###;-#,##0.###", |
| "#,##0.00 \u00A4;-#,##0.00 \u00A4", |
| "#,##0%", |
| } |
| ShortLanguage { "fra" } |
| localPatternChars { "GanjkHmsSEDFwWxhKzAe" } |
| zoneStrings { |
| { |
| "Africa/Casablanca", |
| "GMT", |
| "GMT", |
| "GMT", |
| "GMT", |
| } |
| |
| // http://www.elections.ca/gen_info/backgrounders/ec90815_f.html |
| // http://lcweb.loc.gov/standards/iso639-2/frenchlangn.html |
| // http://www.egt.ie/standards/iso3166/iso3166-1-fr.html |
| |
| } |
| LocaleScript{ |
| "Latn", // ISO 15924 Name |
| } |
| |
| //------------------------------------------------------------ |
| // Rule Based Number Format Support |
| //------------------------------------------------------------ |
| |
| // * Spellout rules for French. French adds some interesting quirks of its |
| // * own: 1) The word "et" is interposed between the tens and ones digits, |
| // * but only if the ones digit if 1: 20 is "vingt," and 2 is "vingt-deux," |
| // * but 21 is "vingt-et-un." 2) There are no words for 70, 80, or 90. |
| // * "quatre-vingts" ("four twenties") is used for 80, and values proceed |
| // * by score from 60 to 99 (e.g., 73 is "soixante-treize" ["sixty-thirteen"]). |
| // * Numbers from 1,100 to 1,199 are rendered as hundreds rather than |
| // * thousands: 1,100 is "onze cents" ("eleven hundred"), rather than |
| // * "mille cent" ("one thousand one hundred") |
| |
| SpelloutRules { |
| // the main rule set |
| "%main:\n" |
| " -x: moins >>;\n" |
| " x.x: << virgule >>;\n" |
| // words for numbers from 0 to 10 |
| " z\u00e9ro; un; deux; trois; quatre; cinq; six; sept; huit; neuf;\n" |
| " dix; onze; douze; treize; quatorze; quinze; seize;\n" |
| " dix-sept; dix-huit; dix-neuf;\n" |
| // ords for the multiples of 10: %%alt-ones inserts "et" |
| // when needed |
| " 20: vingt[->%%alt-ones>];\n" |
| " 30: trente[->%%alt-ones>];\n" |
| " 40: quarante[->%%alt-ones>];\n" |
| " 50: cinquante[->%%alt-ones>];\n" |
| // rule for 60. The /20 causes this rule's multiplier to be |
| // 20 rather than 10, allowinhg us to recurse for all values |
| // from 60 to 79... |
| " 60/20: soixante[->%%alt-ones>];\n" |
| // ...except for 71, which must be special-cased |
| " 71: soixante et onze;\n" |
| // at 72, we have to repeat the rule for 60 to get us to 79 |
| " 72/20: soixante->%%alt-ones>;\n" |
| // at 80, we state a new rule with the phrase for 80. Since |
| // it changes form when there's a ones digit, we need a second |
| // rule at 81. This rule also includes "/20," allowing it to |
| // be used correctly for all values up to 99 |
| " 80: quatre-vingts; 81/20: quatre-vingt->>;\n" |
| // "cent" becomes plural when preceded by a multiplier, and |
| // the multiplier is omitted from the singular form |
| " 100: cent[ >>];\n" |
| " 200: << cents[ >>];\n" |
| " 1000: mille[ >>];\n" |
| // values from 1,100 to 1,199 are rendered as "onze cents..." |
| // instead of "mille cent..." The > after "1000" decreases |
| // the rule's exponent, causing its multiplier to be 100 instead |
| // of 1,000. This prevents us from getting "onze cents cent |
| // vingt-deux" ("eleven hundred one hundred twenty-two"). |
| " 1100>: onze cents[ >>];\n" |
| // at 1,200, we go back to formating in thousands, so we |
| // repeat the rule for 1,000 |
| " 1200: mille >>;\n" |
| // at 2,000, the multiplier is added |
| " 2000: << mille[ >>];\n" |
| " 1,000,000: << million[ >>];\n" |
| " 1,000,000,000: << milliarde[ >>];\n" |
| " 1,000,000,000,000: << billion[ >>];\n" |
| " 1,000,000,000,000,000: =#,##0=;\n" |
| // %%alt-ones is used to insert "et" when the ones digit is 1 |
| "%%alt-ones:\n" |
| " ; et-un; =%main=;\n" |
| "%%lenient-parse:\n" |
| " &\u0000 << ' ' << ',' << '-';\n" |
| } |
| } |