2000-01-12 19:26:57 +00:00
|
|
|
// *******************************************************************************
|
|
|
|
// *
|
2001-03-21 17:49:38 +00:00
|
|
|
// * Copyright (C) 1997-2001, International Business Machines
|
2000-01-12 19:26:57 +00:00
|
|
|
// * Corporation and others. All Rights Reserved.
|
|
|
|
// *
|
|
|
|
// *******************************************************************************
|
1999-08-16 21:50:52 +00:00
|
|
|
|
|
|
|
fr {
|
2001-05-28 18:35:34 +00:00
|
|
|
Version{"1.0.1"}
|
2000-07-14 22:31:35 +00:00
|
|
|
CollationElements {
|
|
|
|
Version { "1.0" }
|
2001-04-25 23:16:08 +00:00
|
|
|
Sequence { "[backwards 2]&A<<\u00e6/e<<<\u00c6/E" }
|
2000-07-14 22:31:35 +00:00
|
|
|
}
|
1999-08-16 21:50:52 +00:00
|
|
|
Countries {
|
2000-10-30 21:05:32 +00:00
|
|
|
AR { "Argentine" }
|
1999-08-16 21:50:52 +00:00
|
|
|
AT { "Autriche" }
|
2000-10-30 21:05:32 +00:00
|
|
|
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" }
|
1999-08-16 21:50:52 +00:00
|
|
|
ES { "Espagne" }
|
|
|
|
FI { "Finlande" }
|
2000-10-30 21:05:32 +00:00
|
|
|
FR { "France" }
|
|
|
|
GB { "Royaume Uni" }
|
|
|
|
GR { "Gr\u00E8ce" }
|
|
|
|
HR { "Croatie" }
|
|
|
|
ID { "Indon\u00E9sie" }
|
|
|
|
IE { "Irlande" }
|
|
|
|
IL { "Isra\u00EBl" }
|
1999-08-16 21:50:52 +00:00
|
|
|
IT { "Italie" }
|
|
|
|
JP { "Japon" }
|
2000-10-30 21:05:32 +00:00
|
|
|
MT { "Malte" }
|
|
|
|
MX { "Mexique" }
|
1999-08-16 21:50:52 +00:00
|
|
|
NL { "Pays-Bas" }
|
|
|
|
NO { "Norv\u00E8ge" }
|
2000-10-30 21:05:32 +00:00
|
|
|
NZ { "Nouvelle-Z\u00E9lande" }
|
1999-08-16 21:50:52 +00:00
|
|
|
PT { "Portugal" }
|
2000-10-30 21:05:32 +00:00
|
|
|
RU { "Russie" }
|
1999-08-16 21:50:52 +00:00
|
|
|
SE { "Su\u00E8de" }
|
|
|
|
TR { "Turquie" }
|
2000-10-30 21:05:32 +00:00
|
|
|
US { "\u00C9tats-Unis" }
|
|
|
|
VE { "Venezuela" }
|
|
|
|
YU { "Yougoslavie" }
|
|
|
|
ZA { "Afrique du Sud" }
|
1999-08-16 21:50:52 +00:00
|
|
|
}
|
2000-10-30 21:05:32 +00:00
|
|
|
|
|
|
|
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" }
|
2000-11-30 20:57:20 +00:00
|
|
|
mt { "maltais" }
|
2000-10-30 21:05:32 +00:00
|
|
|
nl { "hollandais" } // ne'erlandais ?
|
|
|
|
no { "norv\u00E9gien" }
|
|
|
|
pt { "portugais" }
|
|
|
|
ru { "russe" }
|
|
|
|
sv { "su\u00E9dois" }
|
|
|
|
tr { "turc" }
|
|
|
|
zh { "chinois" }
|
|
|
|
}
|
|
|
|
|
1999-08-16 21:50:52 +00:00
|
|
|
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",
|
|
|
|
}
|
2000-10-30 21:05:32 +00:00
|
|
|
|
|
|
|
|
1999-08-16 21:50:52 +00:00
|
|
|
Eras {
|
1999-11-02 00:34:42 +00:00
|
|
|
"av. J.-C.",
|
1999-11-04 18:11:54 +00:00
|
|
|
"ap. J.-C.",
|
1999-08-16 21:50:52 +00:00
|
|
|
}
|
2000-08-09 22:58:01 +00:00
|
|
|
LocaleID { "0c" }
|
1999-08-16 21:50:52 +00:00
|
|
|
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" }
|
2000-01-25 15:55:54 +00:00
|
|
|
localPatternChars { "GanjkHmsSEDFwWxhKzAe" }
|
1999-08-16 21:50:52 +00:00
|
|
|
zoneStrings {
|
|
|
|
{
|
|
|
|
"Africa/Casablanca",
|
|
|
|
"GMT",
|
|
|
|
"GMT",
|
|
|
|
"GMT",
|
|
|
|
"GMT",
|
|
|
|
}
|
2000-10-30 21:05:32 +00:00
|
|
|
|
|
|
|
// http://www.elections.ca/gen_info/backgrounders/ec90815_f.html
|
2000-11-30 20:57:20 +00:00
|
|
|
// http://lcweb.loc.gov/standards/iso639-2/frenchlangn.html
|
|
|
|
// http://www.egt.ie/standards/iso3166/iso3166-1-fr.html
|
|
|
|
|
1999-08-16 21:50:52 +00:00
|
|
|
}
|
2001-10-23 01:57:19 +00:00
|
|
|
LocaleScript{
|
2001-07-09 15:20:03 +00:00
|
|
|
"Latn", // ISO 15924 Name
|
|
|
|
}
|
2000-10-30 21:05:32 +00:00
|
|
|
|
2001-10-10 21:43:11 +00:00
|
|
|
//------------------------------------------------------------
|
|
|
|
// Rule Based Number Format Support
|
|
|
|
//------------------------------------------------------------
|
2000-10-30 21:05:32 +00:00
|
|
|
|
2001-10-10 21:43:11 +00:00
|
|
|
// * 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")
|
2000-10-30 21:05:32 +00:00
|
|
|
|
2001-10-10 21:43:11 +00:00
|
|
|
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"
|
2002-01-05 05:52:46 +00:00
|
|
|
" 1,000,000,000: << milliard[ >>];\n"
|
2001-10-10 21:43:11 +00:00
|
|
|
" 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"
|
|
|
|
}
|
|
|
|
}
|