summaryrefslogtreecommitdiff
path: root/i18npool
diff options
context:
space:
mode:
Diffstat (limited to 'i18npool')
-rw-r--r--i18npool/inc/i18npool/lang.h4
-rw-r--r--i18npool/prj/build.lst2
-rw-r--r--i18npool/prj/d.lst2
-rw-r--r--i18npool/source/breakiterator/breakiteratorImpl.cxx4
-rw-r--r--i18npool/source/breakiterator/data/char_in.txt112
-rw-r--r--i18npool/source/isolang/isolang.cxx61
-rwxr-xr-xi18npool/source/isolang/langid.pl55
-rw-r--r--i18npool/source/isolang/mslangid.cxx11
-rw-r--r--i18npool/source/localedata/LocaleNode.cxx12
-rw-r--r--i18npool/source/localedata/data/ar_DZ.xml437
-rw-r--r--i18npool/source/localedata/data/localedata_euro.map17
-rw-r--r--i18npool/source/localedata/data/localedata_others.map34
-rw-r--r--i18npool/source/localedata/data/ltg_LV.xml22
-rw-r--r--i18npool/source/localedata/data/lv_LV.xml14
-rw-r--r--i18npool/source/localedata/data/mai_IN.xml357
-rw-r--r--i18npool/source/localedata/data/makefile.mk213
-rw-r--r--i18npool/source/localedata/data/rue_SK.xml359
-rw-r--r--i18npool/source/localedata/localedata.cxx3
-rw-r--r--i18npool/source/localedata/saxparser.cxx44
-rw-r--r--i18npool/source/paper/paper.cxx53
-rw-r--r--i18npool/source/registerservices/registerservices.cxx23
-rw-r--r--i18npool/source/search/i18nsearch.component34
-rw-r--r--i18npool/source/search/makefile.mk8
-rw-r--r--i18npool/source/search/textsearch.cxx19
-rw-r--r--i18npool/source/transliteration/transliterationImpl.cxx1
-rwxr-xr-xi18npool/source/transliteration/transliteration_body.cxx273
-rw-r--r--i18npool/util/i18npool.component484
-rw-r--r--i18npool/util/makefile.mk8
28 files changed, 2170 insertions, 496 deletions
diff --git a/i18npool/inc/i18npool/lang.h b/i18npool/inc/i18npool/lang.h
index 8599ec75c634..52e4e51d7a41 100644
--- a/i18npool/inc/i18npool/lang.h
+++ b/i18npool/inc/i18npool/lang.h
@@ -512,5 +512,9 @@ typedef unsigned short LanguageType;
#define LANGUAGE_USER_SARDINIAN_LOGUDORESE 0x0652
#define LANGUAGE_USER_SARDINIAN_SASSARESE 0x0653
#define LANGUAGE_USER_BAFIA 0x0654
+#define LANGUAGE_USER_GIKUYU 0x0655
+#define LANGUAGE_USER_RUSYN_UKRAINE 0x0656
+#define LANGUAGE_USER_RUSYN_SLOVAKIA 0x8256 /* makeLangID( 0x20, getPrimaryLanguage( LANGUAGE_USER_RUSYN_UKRAINE)) */
+
#endif /* INCLUDED_I18NPOOL_LANG_H */
diff --git a/i18npool/prj/build.lst b/i18npool/prj/build.lst
index 24e9607596ac..22609becbe86 100644
--- a/i18npool/prj/build.lst
+++ b/i18npool/prj/build.lst
@@ -1,4 +1,4 @@
-inp i18npool : bridges sax stoc comphelper ICU:icu i18nutil regexp NULL
+inp i18npool : bridges sax stoc comphelper ICU:icu i18nutil regexp LIBXSLT:libxslt NULL
inp i18npool usr1 - all inp_mkout NULL
inp i18npool\inc nmake - all inp_inc NULL
inp i18npool\source\registerservices nmake - all inp_rserv inp_inc NULL
diff --git a/i18npool/prj/d.lst b/i18npool/prj/d.lst
index 54aefa732b89..8d27137424a9 100644
--- a/i18npool/prj/d.lst
+++ b/i18npool/prj/d.lst
@@ -46,3 +46,5 @@ mkdir: %_DEST%\inc%_EXT%\i18npool
..\%__SRC%\lib\libi18npaper*.so %_DEST%\lib%_EXT%\libi18npaper*.so
..\%__SRC%\lib\libi18npaper*.dylib %_DEST%\lib%_EXT%\libi18npaper*.dylib
+..\%__SRC%\misc\i18npool.component %_DEST%\xml%_EXT%\i18npool.component
+..\%__SRC%\misc\i18nsearch.component %_DEST%\xml%_EXT%\i18nsearch.component
diff --git a/i18npool/source/breakiterator/breakiteratorImpl.cxx b/i18npool/source/breakiterator/breakiteratorImpl.cxx
index e4e08d42df43..d22203d100c7 100644
--- a/i18npool/source/breakiterator/breakiteratorImpl.cxx
+++ b/i18npool/source/breakiterator/breakiteratorImpl.cxx
@@ -488,6 +488,10 @@ sal_Int16 BreakIteratorImpl::getScriptClass(sal_uInt32 currentChar)
// workaround for Coptic
else if ( 0x2C80 <= currentChar && 0x2CE3 >= currentChar)
nRet = ScriptType::LATIN;
+ // work-around for ligatures (see http://www.unicode.org/charts/PDF/UFB00.pdf)
+ else if ((0xFB00 <= currentChar && currentChar <= 0xFB06) ||
+ (0xFB13 <= currentChar && currentChar <= 0xFB17))
+ nRet = ScriptType::LATIN;
else {
UBlockCode block=ublock_getCode(currentChar);
sal_uInt16 i;
diff --git a/i18npool/source/breakiterator/data/char_in.txt b/i18npool/source/breakiterator/data/char_in.txt
index 72c4a44720cd..5e1ed67596c0 100644
--- a/i18npool/source/breakiterator/data/char_in.txt
+++ b/i18npool/source/breakiterator/data/char_in.txt
@@ -1,48 +1,108 @@
#
-# Copyright (C) 2002-2003, International Business Machines Corporation and others.
+# Copyright (C) 2002-2009, International Business Machines Corporation and others.
# All Rights Reserved.
#
# file: char.txt
#
# ICU Character Break Rules, also known as Grapheme Cluster Boundaries
# See Unicode Standard Annex #29.
-# These rules are based on TR29 Version 4.0.0
+# These rules are based on TR29 Revision 13, for Unicode Version 5.1
#
#
# Character Class Definitions.
-# The names are those from TR29.
#
-$CR = \r;
-$LF = \n;
-$Control = [[:Zl:] [:Zp:] [:Cc:] [:Cf:]];
-
-# add Japanese Half Width voicing marks to $Extend
-$VoiceMarks = [\uff9e\uff9f];
-$cmcextend = [ \u0903 \u093e-\u0940 \u0949-\u094C \u09bf-\u09c0 \u09c7-\u09c8 \u09cb-\u09cc \u0bc1-\u0bc2 \u0bc6-\u0bc8 \u0bca-\u0bcc \u0c01-\u0c03 \u0c41-\u0c44];
-$Extend = [[:Grapheme_Extend = TRUE:] $VoiceMarks $cmcextend];
+$CR = [\p{Grapheme_Cluster_Break = CR}];
+$LF = [\p{Grapheme_Cluster_Break = LF}];
+$Control = [\p{Grapheme_Cluster_Break = Control}];
+$Prepend = [\p{Grapheme_Cluster_Break = Prepend}];
+$Extend = [\p{Grapheme_Cluster_Break = Extend}];
+$SpacingMark = [\p{Grapheme_Cluster_Break = SpacingMark}];
+$BengaliLetter = [\u0985-\u09B9 \u09CE \u09DC-\u09E1 \u09F0-\u09F1];
+$BengaliSignVirama = \u09CD;
+$GujaratiLetter = [\u0A85-\u0A8C \u0A8F-\u0A90 \u0A93-\u0AB9 \u0AE0-\u0AE1];
+$GujaratiSignVirama = \u0ACD;
+$DevanagariLetter = [\u0904-\u0939 \u0958-\u0961 \u0972-\u097F];
+$DevanagariSignVirama = \u094D;
+$KannadaLetter = [\u0C85-\u0CB9 \u0CDE-\u0CE1];
+$KannadaSignVirama = \u0CCD;
+$MalayalamLetter = [\u0D05-\u0D39 \u0D60-\u0D61 \u0D7A-\u0D7F];
+$MalayalamSignVirama = \u0D4D;
+$OriyaLetter = [\u0B05-\u0B39 \u0B5C-\u0B61 \u0B71];
+$OriyaSignVirama = \u0B4D;
+$GurmukhiLetter = [\u0A05-\u0A39 \u0A59-\u0A5E];
+$GurmukhiSignVirama = \u0A4D;
+$TamilLetter = [\u0B85-\u0BB9];
+$TamilSignVirama = \u0BCD;
+$TeluguLetter = [\u0C05-\u0C39 \u0C58-\u0C61];
+$TeluguSignVirama = \u0C4D;
#
# Korean Syllable Definitions
#
-$L = [:Hangul_Syllable_Type = L:];
-$V = [:Hangul_Syllable_Type = V:];
-$T = [:Hangul_Syllable_Type = T:];
+$L = [\p{Grapheme_Cluster_Break = L}];
+$V = [\p{Grapheme_Cluster_Break = V}];
+$T = [\p{Grapheme_Cluster_Break = T}];
-$LV = [:Hangul_Syllable_Type = LV:];
-$LVT = [:Hangul_Syllable_Type = LVT:];
+$LV = [\p{Grapheme_Cluster_Break = LV}];
+$LVT = [\p{Grapheme_Cluster_Break = LVT}];
-$HangulSyllable = $L+ | ($L* ($LV? $V+ | $LV | $LVT) $T*) | $T+;
-#
-# Forward Break Rules
-#
+## -------------------------------------------------
+!!chain;
+
+!!forward;
+
$CR $LF;
-([^$Control] | $HangulSyllable) $Extend*;
-.;
+$BengaliLetter ($BengaliSignVirama $BengaliLetter?)+;
+$GujaratiLetter ($GujaratiSignVirama $GujaratiLetter?)+;
+$DevanagariLetter ($DevanagariSignVirama $DevanagariLetter?)+;
+$KannadaLetter ($KannadaSignVirama $KannadaLetter?)+;
+$MalayalamLetter ($MalayalamSignVirama $MalayalamLetter?)+;
+$OriyaLetter ($OriyaSignVirama $OriyaLetter?)+;
+$GurmukhiLetter ($GurmukhiSignVirama $GurmukhiLetter?)+;
+$TamilLetter ($TamilSignVirama $TamilLetter?)+;
+$TeluguLetter ($TeluguSignVirama $TeluguLetter?)+;
+
+$L ($L | $V | $LV | $LVT);
+($LV | $V) ($V | $T);
+($LVT | $T) $T;
+
+[^$Control $CR $LF] $Extend;
+
+[^$Control $CR $LF] $SpacingMark;
+$Prepend [^$Control $CR $LF];
+
+
+## -------------------------------------------------
+
+!!reverse;
+$LF $CR;
+($BengaliLetter? $BengaliSignVirama)+ $BengaliLetter;
+($GujaratiLetter? $GujaratiSignVirama)+ $GujaratiLetter;
+($DevanagariLetter? $DevanagariSignVirama)+ $DevanagariLetter;
+($KannadaLetter? $KannadaSignVirama)+ $KannadaLetter;
+($MalayalamLetter? $MalayalamSignVirama)+ $MalayalamLetter;
+($OriyaLetter? $OriyaSignVirama)+ $OriyaLetter;
+($GurmukhiLetter? $GurmukhiSignVirama)+ $GurmukhiLetter;
+($TamilLetter? $TamilSignVirama)+ $TamilLetter;
+($TeluguLetter? $TeluguSignVirama)+ $TeluguLetter;
+($L | $V | $LV | $LVT) $L;
+($V | $T) ($LV | $V);
+$T ($LVT | $T);
+
+$Extend [^$Control $CR $LF];
+$SpacingMark [^$Control $CR $LF];
+[^$Control $CR $LF] $Prepend;
+
+
+## -------------------------------------------------
+
+!!safe_reverse;
+
+
+## -------------------------------------------------
+
+!!safe_forward;
-#
-# Reverse Rule, back up to the beginning of some preceding grapheme cluster.
-#
-! ($Extend | $V | $T )* ($LF $CR | ($LV | $LVT)?$L* | .);
diff --git a/i18npool/source/isolang/isolang.cxx b/i18npool/source/isolang/isolang.cxx
index 9d80bf7050e6..357be80a69ea 100644
--- a/i18npool/source/isolang/isolang.cxx
+++ b/i18npool/source/isolang/isolang.cxx
@@ -287,8 +287,9 @@ static MsLangId::IsoLangEntry const aImplIsoLangEntries[] =
{ LANGUAGE_BELARUSIAN, "be", "BY" },
{ LANGUAGE_CATALAN, "ca", "ES" }, // Spain (default)
{ LANGUAGE_CATALAN, "ca", "AD" }, // Andorra
- { LANGUAGE_USER_CATALAN_VALENCIAN, "ca", "XV" }, // XV: ISO 3166 user-assigned; old workaround for UI localization only, do not use in document content! Kept just in case..
- { LANGUAGE_USER_CATALAN_VALENCIAN, "qcv", "ES" }, // qcv: ISO 639-3 reserved-for-local-use; for UI localization, use in document content on own risk!
+ { LANGUAGE_USER_CATALAN_VALENCIAN, "ca", "XV" }, // XV: ISO 3166 user-assigned; workaround for UI localization only, do not use in document content!
+ { LANGUAGE_CATALAN, "qcv", "ES" }, // qcv: ISO 639-3 reserved-for-local-use; UI localization quirk only, do not use in document content!
+// { LANGUAGE_USER_CATALAN_VALENCIAN, "ca", "ES" }, // In case MS format files escaped into the wild, map them back.
{ LANGUAGE_FRENCH_CAMEROON, "fr", "CM" },
{ LANGUAGE_FRENCH_COTE_D_IVOIRE, "fr", "CI" },
{ LANGUAGE_FRENCH_HAITI, "fr", "HT" },
@@ -457,6 +458,9 @@ static MsLangId::IsoLangEntry const aImplIsoLangEntries[] =
{ LANGUAGE_USER_TAHITIAN, "ty", "PF" },
{ LANGUAGE_USER_MALAGASY_PLATEAU, "plt", "MG" },
{ LANGUAGE_USER_BAFIA, "ksf", "CM" },
+ { LANGUAGE_USER_GIKUYU, "ki", "KE" },
+ { LANGUAGE_USER_RUSYN_UKRAINE, "rue", "UA" },
+ { LANGUAGE_USER_RUSYN_SLOVAKIA, "rue", "SK" },
{ LANGUAGE_NONE, "zxx", "" }, // added to ISO 639-2 on 2006-01-11: Used to declare the absence of linguistic information
{ LANGUAGE_DONTKNOW, "", "" } // marks end of table
};
@@ -1005,6 +1009,28 @@ LanguageType MsLangId::convertIsoByteStringToLanguage(
}
// -----------------------------------------------------------------------
+
+struct IsoLangGLIBCModifiersEntry
+{
+ LanguageType mnLang;
+ sal_Char maLangStr[4];
+ sal_Char maCountry[3];
+ sal_Char maAtString[9];
+};
+
+static IsoLangGLIBCModifiersEntry const aImplIsoLangGLIBCModifiersEntries[] =
+{
+ // MS-LANGID codes ISO639-1/2/3 ISO3166 glibc modifier
+ { LANGUAGE_BOSNIAN_CYRILLIC_BOSNIA_HERZEGOVINA, "bs", "BA", "cyrillic" },
+ { LANGUAGE_USER_SERBIAN_LATIN_SERBIA, "sr", "RS", "latin" }, // Serbian Latin in Serbia
+ { LANGUAGE_SERBIAN_LATIN, "sr", "CS", "latin" }, // Serbian Latin in Serbia and Montenegro
+ { LANGUAGE_USER_SERBIAN_LATIN_MONTENEGRO, "sr", "ME", "latin" }, // Serbian Latin in Montenegro
+ { LANGUAGE_SERBIAN_LATIN_NEUTRAL, "sr", "", "latin" },
+ { LANGUAGE_AZERI_CYRILLIC, "az", "AZ", "cyrillic" },
+ { LANGUAGE_UZBEK_CYRILLIC, "uz", "UZ", "cyrillic" },
+ { LANGUAGE_DONTKNOW, "", "", "" } // marks end of table
+};
+
// convert a unix locale string into LanguageType
// static
@@ -1013,15 +1039,20 @@ LanguageType MsLangId::convertUnxByteStringToLanguage(
{
rtl::OString aLang;
rtl::OString aCountry;
+ rtl::OString aAtString;
sal_Int32 nLangSepPos = rString.indexOf( (sal_Char)'_' );
sal_Int32 nCountrySepPos = rString.indexOf( (sal_Char)'.' );
+ sal_Int32 nAtPos = rString.indexOf( (sal_Char)'@' );
if (nCountrySepPos < 0)
- nCountrySepPos = rString.indexOf( (sal_Char)'@' );
+ nCountrySepPos = nAtPos;
if (nCountrySepPos < 0)
nCountrySepPos = rString.getLength();
+ if (nAtPos >= 0)
+ aAtString = rString.copy( nAtPos+1 );
+
if ( ((nLangSepPos >= 0) && (nLangSepPos > nCountrySepPos))
|| ((nLangSepPos < 0)) )
{
@@ -1035,6 +1066,30 @@ LanguageType MsLangId::convertUnxByteStringToLanguage(
aCountry = rString.copy( nLangSepPos+1, nCountrySepPos - nLangSepPos - 1);
}
+ // if there is a glibc modifier, first look for exact match in modifier table
+ if (aAtString.getLength())
+ {
+ // language is lower case in table
+ rtl::OString aLowerLang = aLang.toAsciiLowerCase();
+ // country is upper case in table
+ rtl::OString aUpperCountry = aCountry.toAsciiUpperCase();
+ const IsoLangGLIBCModifiersEntry* pGLIBCModifiersEntry = aImplIsoLangGLIBCModifiersEntries;
+ do
+ {
+ if (( aLowerLang.equals( pGLIBCModifiersEntry->maLangStr ) ) &&
+ ( aAtString.equals( pGLIBCModifiersEntry->maAtString ) ))
+ {
+ if ( !aUpperCountry.getLength() ||
+ aUpperCountry.equals( pGLIBCModifiersEntry->maCountry ) )
+ {
+ return pGLIBCModifiersEntry->mnLang;
+ }
+ }
+ ++pGLIBCModifiersEntry;
+ }
+ while ( pGLIBCModifiersEntry->mnLang != LANGUAGE_DONTKNOW );
+ }
+
return convertIsoNamesToLanguage( aLang, aCountry );
}
diff --git a/i18npool/source/isolang/langid.pl b/i18npool/source/isolang/langid.pl
index 06883279345b..8035178b7bb5 100755
--- a/i18npool/source/isolang/langid.pl
+++ b/i18npool/source/isolang/langid.pl
@@ -39,7 +39,8 @@ sub Usage()
"\n",
"langid - a hackish utility to lookup lang.h language defines and LangIDs,\n",
"isolang.cxx ISO639/ISO3166 mapping, locale data files, langtab.src language\n",
- "listbox entries, postset.mk and file_ooo.scp registry name.\n\n",
+ "listbox entries, postset.mk, file_ooo.scp registry name, globals.pm and\n",
+ "msi-encodinglist.txt\n\n",
"Usage: $0 [--single] {language string} | {LangID} | {primarylanguage sublanguage} | {language-country}\n\n",
@@ -105,7 +106,8 @@ sub grepFile($$$$@)
my( $regex, $path, $module, $name, @addregex) = @_;
my @result;
my $found = 0;
- my $arefound = '';
+ my $areopen = 0;
+ my $arecloser = '';
my $file;
# Try module under current working directory first to catch local
# modifications. A Not yet delivered lang.h is a special case.
@@ -145,17 +147,22 @@ sub grepFile($$$$@)
print "$line\n";
push( @result, $line);
}
- else
+ elsif (@addregex)
{
- for my $re (@addregex)
+ # By convention first element is opener, second element is closer.
+ if (!$areopen)
{
- if ($re ne $arefound && $line =~ /$re/)
+ if ($line =~ /$addregex[0]/)
{
- if ($arefound eq '')
- {
- $arefound = $re;
- }
- else
+ $areopen = 1;
+ $arecloser = $addregex[1];
+ }
+ }
+ if ($areopen)
+ {
+ for (my $i = 2; $i < @addregex; ++$i)
+ {
+ if ($line =~ /$addregex[$i]/)
{
if (!$found)
{
@@ -167,13 +174,19 @@ sub grepFile($$$$@)
push( @result, $line);
}
}
+ if ($line =~ /$arecloser/)
+ {
+ $areopen = 0;
+ }
}
}
}
close( IN);
}
if (!$found) {
- print "Not found in $file\n"; }
+ print "Not found in $file\n";
+ #print "Not found in $file for $regex @addregex\n";
+ }
return @result;
}
@@ -317,13 +330,13 @@ sub main()
if ($coun)
{
$loca = $lang . "_" . $coun;
- push( @langcoungreplist, $lang . '(-' . $coun . ')?');
+ push( @langcoungreplist, '\b' . $lang . '\b(-' . $coun . ')?');
}
else
{
$loca = $lang;
$coun = "";
- push( @langcoungreplist, $lang);
+ push( @langcoungreplist, '\b' . $lang . '\b');
}
my $file = "$SRC_ROOT/i18npool/source/localedata/data/$loca.xml";
my $found;
@@ -385,12 +398,24 @@ sub main()
grepFile(
'^\s*Name\s*\(' . $langcoun . '\)\s*=',
"$SRC_ROOT", "scp2", "source/ooo/file_ooo.scp", ());
+
# completelangiso=af ar as-IN ... zu
grepFile(
- '^\s*completelangiso\s*[= ](.{2,3}(-..)?)*' . $langcoun . '',
+ '^\s*completelangiso\s*=\s*(\s*([a-z]{2,3})(-[A-Z][A-Z])?)*' . $langcoun . '',
"$SRC_ROOT", "solenv", "inc/postset.mk",
# needs a duplicated pair of backslashes to produce a literal \\
- ('^\s*completelangiso\s*=', '^\s*' . $langcoun . '\s*\\\\*$'));
+ ('^\s*completelangiso\s*=', '^\s*$', '^\s*' . $langcoun . '\s*\\\\*$'));
+
+ # @noMSLocaleLangs = ( "br", "bs", ... )
+ grepFile(
+ '^\s*@noMSLocaleLangs\s*=\s*\(\s*(\s*"([a-z]{2,3})(-[A-Z][A-Z])?"\s*,?)*' . $langcoun . '',
+ "$SRC_ROOT", "solenv", "bin/modules/installer/globals.pm",
+ ('^\s*@noMSLocaleLangs\s*=', '\)\s*$', '"' . $langcoun . '"'));
+
+ # af 1252 1078 # Afrikaans
+ grepFile(
+ '^\s*' . $langcoun . '',
+ "$SRC_ROOT", "setup_native", "source/win32/msi-encodinglist.txt", ());
}
}
return 0;
diff --git a/i18npool/source/isolang/mslangid.cxx b/i18npool/source/isolang/mslangid.cxx
index 8e9dddff872b..a03d24e6fcdb 100644
--- a/i18npool/source/isolang/mslangid.cxx
+++ b/i18npool/source/isolang/mslangid.cxx
@@ -102,6 +102,8 @@ LanguageType MsLangId::getRealLanguageWithoutConfig( LanguageType nLang )
nLang = getSystemUILanguage();
break;
default:
+ /* TODO: would this be useful here? */
+ //nLang = MsLangId::getReplacementForObsoleteLanguage( nLang);
; // nothing
}
if (nLang == LANGUAGE_DONTKNOW)
@@ -128,6 +130,8 @@ LanguageType MsLangId::getRealLanguage( LanguageType nLang )
nLang = nConfiguredSystemUILanguage;
break;
default:
+ /* TODO: would this be useful here? */
+ //nLang = MsLangId::getReplacementForObsoleteLanguage( nLang);
; // nothing
}
if (nLang == LANGUAGE_DONTKNOW)
@@ -369,6 +373,7 @@ sal_Int16 MsLangId::getScriptType( LanguageType nLang )
case LANGUAGE_USER_BODO_INDIA:
case LANGUAGE_USER_DOGRI_INDIA:
case LANGUAGE_USER_MAITHILI_INDIA:
+ case LANGUAGE_UIGHUR_CHINA:
nScript = ::com::sun::star::i18n::ScriptType::COMPLEX;
break;
@@ -451,6 +456,12 @@ LanguageType MsLangId::getReplacementForObsoleteLanguage( LanguageType nLang )
case LANGUAGE_SPANISH_DATED:
nLang = LANGUAGE_SPANISH_MODERN;
break;
+
+ // Do not use ca-XV for document content.
+ /* TODO: remove in case we implement BCP47 language tags. */
+ case LANGUAGE_USER_CATALAN_VALENCIAN:
+ nLang = LANGUAGE_CATALAN;
+ break;
}
return nLang;
}
diff --git a/i18npool/source/localedata/LocaleNode.cxx b/i18npool/source/localedata/LocaleNode.cxx
index 4204b3636fcb..7a520047637d 100644
--- a/i18npool/source/localedata/LocaleNode.cxx
+++ b/i18npool/source/localedata/LocaleNode.cxx
@@ -493,6 +493,14 @@ void LCCTYPENode::generateCode (const OFileWriter &of) const
if (aDoubleQuoteStart == aDoubleQuoteEnd)
fprintf( stderr, "Warning: %s\n",
"DoubleQuotationStart equals DoubleQuotationEnd. Not necessarily an error, but unusual.");
+ /* TODO: should equalness of single and double quotes be an error? Would
+ * need to adapt quite some locales' data. */
+ if (aQuoteStart == aDoubleQuoteStart)
+ fprintf( stderr, "Warning: %s\n",
+ "QuotationStart equals DoubleQuotationStart. Not necessarily an error, but unusual.");
+ if (aQuoteEnd == aDoubleQuoteEnd)
+ fprintf( stderr, "Warning: %s\n",
+ "QuotationEnd equals DoubleQuotationEnd. Not necessarily an error, but unusual.");
writeParameterCheckLen( of, "TimeAM", "timeAM", 1, -1);
writeParameterCheckLen( of, "TimePM", "timePM", 1, -1);
@@ -689,7 +697,7 @@ void LCFormatNode::generateCode (const OFileWriter &of) const
incErrorInt( "ThousandSeparator not present in FormatCode formatindex=\"%d\".",
formatindex);
}
- if (nDec <= nGrp)
+ if (nDec >= 0 && nGrp >= 0 && nDec <= nGrp)
incErrorInt( "Ordering of ThousandSeparator and DecimalSeparator not correct in formatindex=\"%d\".",
formatindex);
}
@@ -724,7 +732,7 @@ void LCFormatNode::generateCode (const OFileWriter &of) const
incErrorInt( "Time100SecSeparator+00 not present in FormatCode formatindex=\"%d\".",
formatindex);
}
- if (n100s <= nTime)
+ if (n100s >= 0 && nTime >= 0 && n100s <= nTime)
incErrorInt( "Ordering of Time100SecSeparator and TimeSeparator not correct in formatindex=\"%d\".",
formatindex);
}
diff --git a/i18npool/source/localedata/data/ar_DZ.xml b/i18npool/source/localedata/data/ar_DZ.xml
new file mode 100644
index 000000000000..68cf3ed441e8
--- /dev/null
+++ b/i18npool/source/localedata/data/ar_DZ.xml
@@ -0,0 +1,437 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE Locale SYSTEM 'locale.dtd'>
+<Locale versionDTD="2.0.3" allowUpdateFromCLDR="yes" version="1.0">
+ <LC_INFO>
+ <Language>
+ <LangID>ar</LangID>
+ <DefaultName>Arabic</DefaultName>
+ </Language>
+ <Country>
+ <CountryID>DZ</CountryID>
+ <DefaultName>Algeria</DefaultName>
+ </Country>
+ </LC_INFO>
+ <LC_CTYPE>
+ <Separators>
+ <DateSeparator>/</DateSeparator>
+ <ThousandSeparator> </ThousandSeparator>
+ <DecimalSeparator>٫</DecimalSeparator>
+ <TimeSeparator>:</TimeSeparator>
+ <Time100SecSeparator>٫</Time100SecSeparator>
+ <ListSeparator>;</ListSeparator>
+ <LongDateDayOfWeekSeparator>، </LongDateDayOfWeekSeparator>
+ <LongDateDaySeparator>، </LongDateDaySeparator>
+ <LongDateMonthSeparator>، </LongDateMonthSeparator>
+ <LongDateYearSeparator> </LongDateYearSeparator>
+ </Separators>
+ <Markers>
+ <QuotationStart>‘</QuotationStart>
+ <QuotationEnd>’</QuotationEnd>
+ <DoubleQuotationStart>"</DoubleQuotationStart>
+ <DoubleQuotationEnd>"</DoubleQuotationEnd>
+ </Markers>
+ <TimeAM>ص</TimeAM>
+ <TimePM>م</TimePM>
+ <MeasurementSystem>metric</MeasurementSystem>
+ </LC_CTYPE>
+ <LC_FORMAT replaceFrom="[CURRENCY]" replaceTo="[$د.ج.‏-1401]">
+ <FormatElement msgid="FixedFormatskey1" default="true" type="medium" usage="FIXED_NUMBER" formatindex="0">
+ <FormatCode>General</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey2" default="true" type="short" usage="FIXED_NUMBER" formatindex="1">
+ <FormatCode>0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey3" default="false" type="medium" usage="FIXED_NUMBER" formatindex="2">
+ <FormatCode>0٫00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey4" default="false" type="short" usage="FIXED_NUMBER" formatindex="3">
+ <FormatCode># ##0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey5" default="false" type="medium" usage="FIXED_NUMBER" formatindex="4">
+ <FormatCode># ##0٫00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey6" default="false" type="medium" usage="FIXED_NUMBER" formatindex="5">
+ <FormatCode># ###٫00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="ScientificFormatskey1" default="true" type="medium" usage="SCIENTIFIC_NUMBER" formatindex="6">
+ <FormatCode>0٫00E+000</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="ScientificFormatskey2" default="false" type="medium" usage="SCIENTIFIC_NUMBER" formatindex="7">
+ <FormatCode>0٫00E+00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="PercentFormatskey1" default="true" type="short" usage="PERCENT_NUMBER" formatindex="8">
+ <FormatCode>0%</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="PercentFormatskey2" default="true" type="long" usage="PERCENT_NUMBER" formatindex="9">
+ <FormatCode>0٫00%</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey1" default="true" type="short" usage="CURRENCY" formatindex="12">
+ <FormatCode>[CURRENCY] # ##0;[CURRENCY] # ##0 -</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey2" default="false" type="medium" usage="CURRENCY" formatindex="13">
+ <FormatCode>[CURRENCY] # ##0٫00;[CURRENCY] # ##0٫00 -</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey3" default="false" type="medium" usage="CURRENCY" formatindex="14">
+ <FormatCode>[CURRENCY] # ##0;[RED][CURRENCY] # ##0 -</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey4" default="true" type="medium" usage="CURRENCY" formatindex="15">
+ <FormatCode>[CURRENCY] # ##0٫00;[RED][CURRENCY] # ##0٫00 -</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey5" default="false" type="medium" usage="CURRENCY" formatindex="16">
+ <FormatCode># ##0٫00 CCC</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey6" default="false" type="medium" usage="CURRENCY" formatindex="17">
+ <FormatCode>[CURRENCY] # ##0٫--;[RED][CURRENCY] # ##0٫-- -</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey1" default="true" type="short" usage="DATE" formatindex="18">
+ <FormatCode>[~hijri]D/MM/YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey9" default="true" type="long" usage="DATE" formatindex="19">
+ <FormatCode>[~hijri]NNN DD MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey8" default="true" type="medium" usage="DATE" formatindex="20">
+ <FormatCode>[NatNum1][~hijri]YYYY/MM/D</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey7" default="false" type="medium" usage="DATE" formatindex="21">
+ <FormatCode>D/M/YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey10" default="false" type="long" usage="DATE" formatindex="22">
+ <FormatCode>[NatNum1][~hijri]NNN DD MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey11" default="false" type="long" usage="DATE" formatindex="23">
+ <FormatCode>DD MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey16" default="false" type="long" usage="DATE" formatindex="24">
+ <FormatCode>[NatNum1]DD MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey12" default="false" type="long" usage="DATE" formatindex="25">
+ <FormatCode>NNN DD MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey17" default="false" type="long" usage="DATE" formatindex="26">
+ <FormatCode>[NatNum1]NNN DD MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey13" default="false" type="long" usage="DATE" formatindex="27">
+ <FormatCode>DD MMMM YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey2" default="false" type="medium" usage="DATE" formatindex="28">
+ <FormatCode>[NatNum1]DD MMMM YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey14" default="false" type="long" usage="DATE" formatindex="29">
+ <FormatCode>[~hijri]DD MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey15" default="false" type="long" usage="DATE" formatindex="30">
+ <FormatCode>[NatNum1][~hijri]DD MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey18" default="false" type="short" usage="DATE" formatindex="31">
+ <FormatCode>[NatNum1][~hijri]YYYY/MM/D</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey19" default="false" type="medium" usage="DATE" formatindex="32">
+ <FormatCode>[NatNum1]YY/MM/DD</FormatCode>
+ <DefaultName>ISO 8601</DefaultName>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey20" default="false" type="medium" usage="DATE" formatindex="33">
+ <FormatCode>[NatNum1]YYYY/MM/DD</FormatCode>
+ <DefaultName>ISO 8601</DefaultName>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey3" default="false" type="medium" usage="DATE" formatindex="34">
+ <FormatCode>MM/YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey4" default="false" type="medium" usage="DATE" formatindex="35">
+ <FormatCode>DD MMM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey5" default="false" type="medium" usage="DATE" formatindex="36">
+ <FormatCode>MMMM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey6" default="false" type="medium" usage="DATE" formatindex="37">
+ <FormatCode>QQ YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey21" default="false" type="medium" usage="DATE" formatindex="38">
+ <FormatCode>WW</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey1" default="true" type="short" usage="TIME" formatindex="39">
+ <FormatCode>HH:MM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey2" default="true" type="medium" usage="TIME" formatindex="40">
+ <FormatCode>HH:MM:SS</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey3" default="false" type="short" usage="TIME" formatindex="41">
+ <FormatCode>AM/PMMM:HH</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey4" default="false" type="medium" usage="TIME" formatindex="42">
+ <FormatCode>AM/PMSS:MM:HH</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey5" default="false" type="medium" usage="TIME" formatindex="43">
+ <FormatCode>[HH]:MM:SS</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey6" default="false" type="short" usage="TIME" formatindex="44">
+ <FormatCode>MM:SS٫00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey7" default="false" type="medium" usage="TIME" formatindex="45">
+ <FormatCode>[HH]:MM:SS٫00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateTimeFormatskey1" default="true" type="medium" usage="DATE_TIME" formatindex="46">
+ <FormatCode>[~hijri]AM/PMHH:MM YYYY/MM/D</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateTimeFormatskey2" default="false" type="medium" usage="DATE_TIME" formatindex="47">
+ <FormatCode>[NatNum1][~hijri]AM/PMHH:MM YYYY/MM/D</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateTimeFormatskey3" default="false" type="medium" usage="DATE_TIME" formatindex="50">
+ <FormatCode>AM/PMHH:MM YYYY/MM/D</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateTimeFormatskey4" default="false" type="medium" usage="DATE_TIME" formatindex="51">
+ <FormatCode>[NatNum1]AM/PMHH:MM YYYY/MM/D</FormatCode>
+ </FormatElement>
+ </LC_FORMAT>
+ <LC_COLLATION ref="en_US" />
+ <LC_SEARCH ref="en_US"/>
+ <LC_INDEX ref="ar_EG"/>
+ <LC_CALENDAR>
+ <Calendar unoid="gregorian" default="true">
+ <DaysOfWeek>
+ <Day>
+ <DayID>sun</DayID>
+ <DefaultAbbrvName>ح</DefaultAbbrvName>
+ <DefaultFullName>الأحد</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>mon</DayID>
+ <DefaultAbbrvName>ن</DefaultAbbrvName>
+ <DefaultFullName>الاثنين</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>tue</DayID>
+ <DefaultAbbrvName>ث</DefaultAbbrvName>
+ <DefaultFullName>الثلاثاء</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>wed</DayID>
+ <DefaultAbbrvName>ر</DefaultAbbrvName>
+ <DefaultFullName>الأربعاء</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>thu</DayID>
+ <DefaultAbbrvName>خ</DefaultAbbrvName>
+ <DefaultFullName>الخميس</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>fri</DayID>
+ <DefaultAbbrvName>ج</DefaultAbbrvName>
+ <DefaultFullName>الجمعة</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>sat</DayID>
+ <DefaultAbbrvName>س</DefaultAbbrvName>
+ <DefaultFullName>السبت</DefaultFullName>
+ </Day>
+ </DaysOfWeek>
+ <MonthsOfYear>
+ <Month>
+ <MonthID>jan</MonthID>
+ <DefaultAbbrvName>جانفي</DefaultAbbrvName>
+ <DefaultFullName>جانفي</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>feb</MonthID>
+ <DefaultAbbrvName>فيفري</DefaultAbbrvName>
+ <DefaultFullName>فيفري</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>mar</MonthID>
+ <DefaultAbbrvName>مارس</DefaultAbbrvName>
+ <DefaultFullName>مارس</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>apr</MonthID>
+ <DefaultAbbrvName>أفريل</DefaultAbbrvName>
+ <DefaultFullName>أفريل</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>may</MonthID>
+ <DefaultAbbrvName>ماي</DefaultAbbrvName>
+ <DefaultFullName>ماي</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>jun</MonthID>
+ <DefaultAbbrvName>جوان</DefaultAbbrvName>
+ <DefaultFullName>جوان</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>jul</MonthID>
+ <DefaultAbbrvName>جويلية</DefaultAbbrvName>
+ <DefaultFullName>جويلية</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>aug</MonthID>
+ <DefaultAbbrvName>أوت</DefaultAbbrvName>
+ <DefaultFullName>أوت</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>sep</MonthID>
+ <DefaultAbbrvName>سبتمبر</DefaultAbbrvName>
+ <DefaultFullName>سبتمبر</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>oct</MonthID>
+ <DefaultAbbrvName>أكتوبر</DefaultAbbrvName>
+ <DefaultFullName>أكتوبر</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>nov</MonthID>
+ <DefaultAbbrvName>نوفمبر</DefaultAbbrvName>
+ <DefaultFullName>نوفمبر</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>dec</MonthID>
+ <DefaultAbbrvName>ديسمبر</DefaultAbbrvName>
+ <DefaultFullName>ديسمبر</DefaultFullName>
+ </Month>
+ </MonthsOfYear>
+ <Eras>
+ <Era>
+ <EraID>bc</EraID>
+ <DefaultAbbrvName>ق.م</DefaultAbbrvName>
+ <DefaultFullName>قبل الميلاد</DefaultFullName>
+ </Era>
+ <Era>
+ <EraID>ad</EraID>
+ <DefaultAbbrvName>م</DefaultAbbrvName>
+ <DefaultFullName>ميلادي</DefaultFullName>
+ </Era>
+ </Eras>
+ <StartDayOfWeek>
+ <DayID>sat</DayID>
+ </StartDayOfWeek>
+ <MinimalDaysInFirstWeek>1</MinimalDaysInFirstWeek>
+ </Calendar>
+ <Calendar unoid="hijri" default="false">
+ <DaysOfWeek>
+ <Day>
+ <DayID>sun</DayID>
+ <DefaultAbbrvName>ح</DefaultAbbrvName>
+ <DefaultFullName>الأحد</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>mon</DayID>
+ <DefaultAbbrvName>ن</DefaultAbbrvName>
+ <DefaultFullName>الاثنين</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>tue</DayID>
+ <DefaultAbbrvName>ث</DefaultAbbrvName>
+ <DefaultFullName>الثلاثاء</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>wed</DayID>
+ <DefaultAbbrvName>ر</DefaultAbbrvName>
+ <DefaultFullName>الأربعاء</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>thu</DayID>
+ <DefaultAbbrvName>خ</DefaultAbbrvName>
+ <DefaultFullName>الخميس</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>fri</DayID>
+ <DefaultAbbrvName>ج</DefaultAbbrvName>
+ <DefaultFullName>الجمعة</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>sat</DayID>
+ <DefaultAbbrvName>س</DefaultAbbrvName>
+ <DefaultFullName>السبت</DefaultFullName>
+ </Day>
+ </DaysOfWeek>
+ <MonthsOfYear>
+ <Month>
+ <MonthID>jan</MonthID>
+ <DefaultAbbrvName>محرم</DefaultAbbrvName>
+ <DefaultFullName>محرم</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>feb</MonthID>
+ <DefaultAbbrvName>صفر</DefaultAbbrvName>
+ <DefaultFullName>صفر</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>mar</MonthID>
+ <DefaultAbbrvName>ربيع الأول</DefaultAbbrvName>
+ <DefaultFullName>ربيع الأول</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>apr</MonthID>
+ <DefaultAbbrvName>ربيع الآخر</DefaultAbbrvName>
+ <DefaultFullName>ربيع الآخر</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>may</MonthID>
+ <DefaultAbbrvName>جمادى الأولى</DefaultAbbrvName>
+ <DefaultFullName>جمادى الأولى</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>jun</MonthID>
+ <DefaultAbbrvName>جمادى الآخرة</DefaultAbbrvName>
+ <DefaultFullName>جمادى الآخرة</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>jul</MonthID>
+ <DefaultAbbrvName>رجب</DefaultAbbrvName>
+ <DefaultFullName>رجب</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>aug</MonthID>
+ <DefaultAbbrvName>شعبان</DefaultAbbrvName>
+ <DefaultFullName>شعبان</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>sep</MonthID>
+ <DefaultAbbrvName>رمضان</DefaultAbbrvName>
+ <DefaultFullName>رمضان</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>oct</MonthID>
+ <DefaultAbbrvName>شوال</DefaultAbbrvName>
+ <DefaultFullName>شوال</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>nov</MonthID>
+ <DefaultAbbrvName>ذو القعدة</DefaultAbbrvName>
+ <DefaultFullName>ذو القعدة</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>dec</MonthID>
+ <DefaultAbbrvName>ذو الحجة</DefaultAbbrvName>
+ <DefaultFullName>ذو الحجة</DefaultFullName>
+ </Month>
+ </MonthsOfYear>
+ <Eras>
+ <Era>
+ <EraID>BeforeHijra</EraID>
+ <DefaultAbbrvName>ه‍</DefaultAbbrvName>
+ <DefaultFullName>قبل الهجرة</DefaultFullName>
+ </Era>
+ <Era>
+ <EraID>AfterHijra</EraID>
+ <DefaultAbbrvName/>
+ <DefaultFullName>هجري</DefaultFullName>
+ </Era>
+ </Eras>
+ <StartDayOfWeek>
+ <DayID>sat</DayID>
+ </StartDayOfWeek>
+ <MinimalDaysInFirstWeek>1</MinimalDaysInFirstWeek>
+ </Calendar>
+ </LC_CALENDAR>
+ <LC_CURRENCY>
+ <Currency default="true" usedInCompatibleFormatCodes="true">
+ <CurrencyID>DZD</CurrencyID>
+ <CurrencySymbol>د.ج.‏</CurrencySymbol>
+ <BankSymbol>DZD</BankSymbol>
+ <CurrencyName>دينار جزائري</CurrencyName>
+ <DecimalPlaces>2</DecimalPlaces>
+ </Currency>
+ </LC_CURRENCY>
+ <LC_TRANSLITERATION ref="en_US"/>
+ <LC_MISC ref="ar_EG"/>
+ <LC_NumberingLevel ref="ar_EG"/>
+ <LC_OutLineNumberingLevel ref="ar_EG"/>
+</Locale>
diff --git a/i18npool/source/localedata/data/localedata_euro.map b/i18npool/source/localedata/data/localedata_euro.map
index 130a3c5a249f..e0564b85ea25 100644
--- a/i18npool/source/localedata/data/localedata_euro.map
+++ b/i18npool/source/localedata/data/localedata_euro.map
@@ -55,6 +55,7 @@ getAllCalendars_pl_PL;
getAllCalendars_pt_BR;
getAllCalendars_pt_PT;
getAllCalendars_ro_RO;
+getAllCalendars_rue_SK;
getAllCalendars_ru_RU;
getAllCalendars_sc_IT;
getAllCalendars_sh_ME;
@@ -124,6 +125,7 @@ getAllCurrencies_pl_PL;
getAllCurrencies_pt_BR;
getAllCurrencies_pt_PT;
getAllCurrencies_ro_RO;
+getAllCurrencies_rue_SK;
getAllCurrencies_ru_RU;
getAllCurrencies_sc_IT;
getAllCurrencies_sh_ME;
@@ -193,6 +195,7 @@ getAllFormats0_pl_PL;
getAllFormats0_pt_BR;
getAllFormats0_pt_PT;
getAllFormats0_ro_RO;
+getAllFormats0_rue_SK;
getAllFormats0_ru_RU;
getAllFormats0_sc_IT;
getAllFormats0_sh_ME;
@@ -262,6 +265,7 @@ getBreakIteratorRules_pl_PL;
getBreakIteratorRules_pt_BR;
getBreakIteratorRules_pt_PT;
getBreakIteratorRules_ro_RO;
+getBreakIteratorRules_rue_SK;
getBreakIteratorRules_ru_RU;
getBreakIteratorRules_sc_IT;
getBreakIteratorRules_sh_ME;
@@ -331,6 +335,7 @@ getCollationOptions_pl_PL;
getCollationOptions_pt_BR;
getCollationOptions_pt_PT;
getCollationOptions_ro_RO;
+getCollationOptions_rue_SK;
getCollationOptions_ru_RU;
getCollationOptions_sc_IT;
getCollationOptions_sh_ME;
@@ -400,6 +405,7 @@ getCollatorImplementation_pl_PL;
getCollatorImplementation_pt_BR;
getCollatorImplementation_pt_PT;
getCollatorImplementation_ro_RO;
+getCollatorImplementation_rue_SK;
getCollatorImplementation_ru_RU;
getCollatorImplementation_sc_IT;
getCollatorImplementation_sh_ME;
@@ -469,6 +475,7 @@ getContinuousNumberingLevels_pl_PL;
getContinuousNumberingLevels_pt_BR;
getContinuousNumberingLevels_pt_PT;
getContinuousNumberingLevels_ro_RO;
+getContinuousNumberingLevels_rue_SK;
getContinuousNumberingLevels_ru_RU;
getContinuousNumberingLevels_sc_IT;
getContinuousNumberingLevels_sh_ME;
@@ -538,6 +545,7 @@ getFollowPageWords_pl_PL;
getFollowPageWords_pt_BR;
getFollowPageWords_pt_PT;
getFollowPageWords_ro_RO;
+getFollowPageWords_rue_SK;
getFollowPageWords_ru_RU;
getFollowPageWords_sc_IT;
getFollowPageWords_sh_ME;
@@ -607,6 +615,7 @@ getForbiddenCharacters_pl_PL;
getForbiddenCharacters_pt_BR;
getForbiddenCharacters_pt_PT;
getForbiddenCharacters_ro_RO;
+getForbiddenCharacters_rue_SK;
getForbiddenCharacters_ru_RU;
getForbiddenCharacters_sc_IT;
getForbiddenCharacters_sh_ME;
@@ -676,6 +685,7 @@ getIndexAlgorithm_pl_PL;
getIndexAlgorithm_pt_BR;
getIndexAlgorithm_pt_PT;
getIndexAlgorithm_ro_RO;
+getIndexAlgorithm_rue_SK;
getIndexAlgorithm_ru_RU;
getIndexAlgorithm_sc_IT;
getIndexAlgorithm_sh_ME;
@@ -745,6 +755,7 @@ getLCInfo_pl_PL;
getLCInfo_pt_BR;
getLCInfo_pt_PT;
getLCInfo_ro_RO;
+getLCInfo_rue_SK;
getLCInfo_ru_RU;
getLCInfo_sc_IT;
getLCInfo_sh_ME;
@@ -814,6 +825,7 @@ getLocaleItem_pl_PL;
getLocaleItem_pt_BR;
getLocaleItem_pt_PT;
getLocaleItem_ro_RO;
+getLocaleItem_rue_SK;
getLocaleItem_ru_RU;
getLocaleItem_sc_IT;
getLocaleItem_sh_ME;
@@ -883,6 +895,7 @@ getOutlineNumberingLevels_pl_PL;
getOutlineNumberingLevels_pt_BR;
getOutlineNumberingLevels_pt_PT;
getOutlineNumberingLevels_ro_RO;
+getOutlineNumberingLevels_rue_SK;
getOutlineNumberingLevels_ru_RU;
getOutlineNumberingLevels_sc_IT;
getOutlineNumberingLevels_sh_ME;
@@ -952,6 +965,7 @@ getReservedWords_pl_PL;
getReservedWords_pt_BR;
getReservedWords_pt_PT;
getReservedWords_ro_RO;
+getReservedWords_rue_SK;
getReservedWords_ru_RU;
getReservedWords_sc_IT;
getReservedWords_sh_ME;
@@ -1021,6 +1035,7 @@ getSearchOptions_pl_PL;
getSearchOptions_pt_BR;
getSearchOptions_pt_PT;
getSearchOptions_ro_RO;
+getSearchOptions_rue_SK;
getSearchOptions_ru_RU;
getSearchOptions_sc_IT;
getSearchOptions_sh_ME;
@@ -1090,6 +1105,7 @@ getTransliterations_pl_PL;
getTransliterations_pt_BR;
getTransliterations_pt_PT;
getTransliterations_ro_RO;
+getTransliterations_rue_SK;
getTransliterations_ru_RU;
getTransliterations_sc_IT;
getTransliterations_sh_ME;
@@ -1159,6 +1175,7 @@ getUnicodeScripts_pl_PL;
getUnicodeScripts_pt_BR;
getUnicodeScripts_pt_PT;
getUnicodeScripts_ro_RO;
+getUnicodeScripts_rue_SK;
getUnicodeScripts_ru_RU;
getUnicodeScripts_sc_IT;
getUnicodeScripts_sh_ME;
diff --git a/i18npool/source/localedata/data/localedata_others.map b/i18npool/source/localedata/data/localedata_others.map
index fd9e13cfb779..e5de10cb68e5 100644
--- a/i18npool/source/localedata/data/localedata_others.map
+++ b/i18npool/source/localedata/data/localedata_others.map
@@ -4,6 +4,7 @@ getAllCalendars_af_NA;
getAllCalendars_af_ZA;
getAllCalendars_ak_GH;
getAllCalendars_am_ET;
+getAllCalendars_ar_DZ;
getAllCalendars_ar_EG;
getAllCalendars_ar_LB;
getAllCalendars_ar_OM;
@@ -37,6 +38,7 @@ getAllCalendars_ky_KG;
getAllCalendars_lg_UG;
getAllCalendars_ln_CD;
getAllCalendars_lo_LA;
+getAllCalendars_mai_IN;
getAllCalendars_ml_IN;
getAllCalendars_mn_MN;
getAllCalendars_mr_IN;
@@ -80,6 +82,7 @@ getAllCurrencies_af_NA;
getAllCurrencies_af_ZA;
getAllCurrencies_ak_GH;
getAllCurrencies_am_ET;
+getAllCurrencies_ar_DZ;
getAllCurrencies_ar_EG;
getAllCurrencies_ar_LB;
getAllCurrencies_ar_OM;
@@ -113,6 +116,7 @@ getAllCurrencies_ky_KG;
getAllCurrencies_lg_UG;
getAllCurrencies_ln_CD;
getAllCurrencies_lo_LA;
+getAllCurrencies_mai_IN;
getAllCurrencies_ml_IN;
getAllCurrencies_mn_MN;
getAllCurrencies_mr_IN;
@@ -156,6 +160,7 @@ getAllFormats0_af_NA;
getAllFormats0_af_ZA;
getAllFormats0_ak_GH;
getAllFormats0_am_ET;
+getAllFormats0_ar_DZ;
getAllFormats0_ar_EG;
getAllFormats0_ar_LB;
getAllFormats0_ar_OM;
@@ -189,6 +194,7 @@ getAllFormats0_ky_KG;
getAllFormats0_lg_UG;
getAllFormats0_ln_CD;
getAllFormats0_lo_LA;
+getAllFormats0_mai_IN;
getAllFormats0_ml_IN;
getAllFormats0_mn_MN;
getAllFormats0_mr_IN;
@@ -232,6 +238,7 @@ getBreakIteratorRules_af_NA;
getBreakIteratorRules_af_ZA;
getBreakIteratorRules_ak_GH;
getBreakIteratorRules_am_ET;
+getBreakIteratorRules_ar_DZ;
getBreakIteratorRules_ar_EG;
getBreakIteratorRules_ar_LB;
getBreakIteratorRules_ar_OM;
@@ -265,6 +272,7 @@ getBreakIteratorRules_ky_KG;
getBreakIteratorRules_lg_UG;
getBreakIteratorRules_ln_CD;
getBreakIteratorRules_lo_LA;
+getBreakIteratorRules_mai_IN;
getBreakIteratorRules_ml_IN;
getBreakIteratorRules_mn_MN;
getBreakIteratorRules_mr_IN;
@@ -308,6 +316,7 @@ getCollationOptions_af_NA;
getCollationOptions_af_ZA;
getCollationOptions_ak_GH;
getCollationOptions_am_ET;
+getCollationOptions_ar_DZ;
getCollationOptions_ar_EG;
getCollationOptions_ar_LB;
getCollationOptions_ar_OM;
@@ -341,6 +350,7 @@ getCollationOptions_ky_KG;
getCollationOptions_lg_UG;
getCollationOptions_ln_CD;
getCollationOptions_lo_LA;
+getCollationOptions_mai_IN;
getCollationOptions_ml_IN;
getCollationOptions_mn_MN;
getCollationOptions_mr_IN;
@@ -384,6 +394,7 @@ getCollatorImplementation_af_NA;
getCollatorImplementation_af_ZA;
getCollatorImplementation_ak_GH;
getCollatorImplementation_am_ET;
+getCollatorImplementation_ar_DZ;
getCollatorImplementation_ar_EG;
getCollatorImplementation_ar_LB;
getCollatorImplementation_ar_OM;
@@ -417,6 +428,7 @@ getCollatorImplementation_ky_KG;
getCollatorImplementation_lg_UG;
getCollatorImplementation_ln_CD;
getCollatorImplementation_lo_LA;
+getCollatorImplementation_mai_IN;
getCollatorImplementation_ml_IN;
getCollatorImplementation_mn_MN;
getCollatorImplementation_mr_IN;
@@ -460,6 +472,7 @@ getContinuousNumberingLevels_af_NA;
getContinuousNumberingLevels_af_ZA;
getContinuousNumberingLevels_ak_GH;
getContinuousNumberingLevels_am_ET;
+getContinuousNumberingLevels_ar_DZ;
getContinuousNumberingLevels_ar_EG;
getContinuousNumberingLevels_ar_LB;
getContinuousNumberingLevels_ar_OM;
@@ -493,6 +506,7 @@ getContinuousNumberingLevels_ky_KG;
getContinuousNumberingLevels_lg_UG;
getContinuousNumberingLevels_ln_CD;
getContinuousNumberingLevels_lo_LA;
+getContinuousNumberingLevels_mai_IN;
getContinuousNumberingLevels_ml_IN;
getContinuousNumberingLevels_mn_MN;
getContinuousNumberingLevels_mr_IN;
@@ -536,6 +550,7 @@ getFollowPageWords_af_NA;
getFollowPageWords_af_ZA;
getFollowPageWords_ak_GH;
getFollowPageWords_am_ET;
+getFollowPageWords_ar_DZ;
getFollowPageWords_ar_EG;
getFollowPageWords_ar_LB;
getFollowPageWords_ar_OM;
@@ -569,6 +584,7 @@ getFollowPageWords_ky_KG;
getFollowPageWords_lg_UG;
getFollowPageWords_ln_CD;
getFollowPageWords_lo_LA;
+getFollowPageWords_mai_IN;
getFollowPageWords_ml_IN;
getFollowPageWords_mn_MN;
getFollowPageWords_mr_IN;
@@ -612,6 +628,7 @@ getForbiddenCharacters_af_NA;
getForbiddenCharacters_af_ZA;
getForbiddenCharacters_ak_GH;
getForbiddenCharacters_am_ET;
+getForbiddenCharacters_ar_DZ;
getForbiddenCharacters_ar_EG;
getForbiddenCharacters_ar_LB;
getForbiddenCharacters_ar_OM;
@@ -645,6 +662,7 @@ getForbiddenCharacters_ky_KG;
getForbiddenCharacters_lg_UG;
getForbiddenCharacters_ln_CD;
getForbiddenCharacters_lo_LA;
+getForbiddenCharacters_mai_IN;
getForbiddenCharacters_ml_IN;
getForbiddenCharacters_mn_MN;
getForbiddenCharacters_mr_IN;
@@ -688,6 +706,7 @@ getIndexAlgorithm_af_NA;
getIndexAlgorithm_af_ZA;
getIndexAlgorithm_ak_GH;
getIndexAlgorithm_am_ET;
+getIndexAlgorithm_ar_DZ;
getIndexAlgorithm_ar_EG;
getIndexAlgorithm_ar_LB;
getIndexAlgorithm_ar_OM;
@@ -721,6 +740,7 @@ getIndexAlgorithm_ky_KG;
getIndexAlgorithm_lg_UG;
getIndexAlgorithm_ln_CD;
getIndexAlgorithm_lo_LA;
+getIndexAlgorithm_mai_IN;
getIndexAlgorithm_ml_IN;
getIndexAlgorithm_mn_MN;
getIndexAlgorithm_mr_IN;
@@ -764,6 +784,7 @@ getLCInfo_af_NA;
getLCInfo_af_ZA;
getLCInfo_ak_GH;
getLCInfo_am_ET;
+getLCInfo_ar_DZ;
getLCInfo_ar_EG;
getLCInfo_ar_LB;
getLCInfo_ar_OM;
@@ -797,6 +818,7 @@ getLCInfo_ky_KG;
getLCInfo_lg_UG;
getLCInfo_ln_CD;
getLCInfo_lo_LA;
+getLCInfo_mai_IN;
getLCInfo_ml_IN;
getLCInfo_mn_MN;
getLCInfo_mr_IN;
@@ -840,6 +862,7 @@ getLocaleItem_af_NA;
getLocaleItem_af_ZA;
getLocaleItem_ak_GH;
getLocaleItem_am_ET;
+getLocaleItem_ar_DZ;
getLocaleItem_ar_EG;
getLocaleItem_ar_LB;
getLocaleItem_ar_OM;
@@ -873,6 +896,7 @@ getLocaleItem_ky_KG;
getLocaleItem_lg_UG;
getLocaleItem_ln_CD;
getLocaleItem_lo_LA;
+getLocaleItem_mai_IN;
getLocaleItem_ml_IN;
getLocaleItem_mn_MN;
getLocaleItem_mr_IN;
@@ -916,6 +940,7 @@ getOutlineNumberingLevels_af_NA;
getOutlineNumberingLevels_af_ZA;
getOutlineNumberingLevels_ak_GH;
getOutlineNumberingLevels_am_ET;
+getOutlineNumberingLevels_ar_DZ;
getOutlineNumberingLevels_ar_EG;
getOutlineNumberingLevels_ar_LB;
getOutlineNumberingLevels_ar_OM;
@@ -949,6 +974,7 @@ getOutlineNumberingLevels_ky_KG;
getOutlineNumberingLevels_lg_UG;
getOutlineNumberingLevels_ln_CD;
getOutlineNumberingLevels_lo_LA;
+getOutlineNumberingLevels_mai_IN;
getOutlineNumberingLevels_ml_IN;
getOutlineNumberingLevels_mn_MN;
getOutlineNumberingLevels_mr_IN;
@@ -992,6 +1018,7 @@ getReservedWords_af_NA;
getReservedWords_af_ZA;
getReservedWords_ak_GH;
getReservedWords_am_ET;
+getReservedWords_ar_DZ;
getReservedWords_ar_EG;
getReservedWords_ar_LB;
getReservedWords_ar_OM;
@@ -1025,6 +1052,7 @@ getReservedWords_ky_KG;
getReservedWords_lg_UG;
getReservedWords_ln_CD;
getReservedWords_lo_LA;
+getReservedWords_mai_IN;
getReservedWords_ml_IN;
getReservedWords_mn_MN;
getReservedWords_mr_IN;
@@ -1068,6 +1096,7 @@ getSearchOptions_af_NA;
getSearchOptions_af_ZA;
getSearchOptions_ak_GH;
getSearchOptions_am_ET;
+getSearchOptions_ar_DZ;
getSearchOptions_ar_EG;
getSearchOptions_ar_LB;
getSearchOptions_ar_OM;
@@ -1101,6 +1130,7 @@ getSearchOptions_ky_KG;
getSearchOptions_lg_UG;
getSearchOptions_ln_CD;
getSearchOptions_lo_LA;
+getSearchOptions_mai_IN;
getSearchOptions_ml_IN;
getSearchOptions_mn_MN;
getSearchOptions_mr_IN;
@@ -1144,6 +1174,7 @@ getTransliterations_af_NA;
getTransliterations_af_ZA;
getTransliterations_ak_GH;
getTransliterations_am_ET;
+getTransliterations_ar_DZ;
getTransliterations_ar_EG;
getTransliterations_ar_LB;
getTransliterations_ar_OM;
@@ -1177,6 +1208,7 @@ getTransliterations_ky_KG;
getTransliterations_lg_UG;
getTransliterations_ln_CD;
getTransliterations_lo_LA;
+getTransliterations_mai_IN;
getTransliterations_ml_IN;
getTransliterations_mn_MN;
getTransliterations_mr_IN;
@@ -1220,6 +1252,7 @@ getUnicodeScripts_af_NA;
getUnicodeScripts_af_ZA;
getUnicodeScripts_ak_GH;
getUnicodeScripts_am_ET;
+getUnicodeScripts_ar_DZ;
getUnicodeScripts_ar_EG;
getUnicodeScripts_ar_LB;
getUnicodeScripts_ar_OM;
@@ -1253,6 +1286,7 @@ getUnicodeScripts_ky_KG;
getUnicodeScripts_lg_UG;
getUnicodeScripts_ln_CD;
getUnicodeScripts_lo_LA;
+getUnicodeScripts_mai_IN;
getUnicodeScripts_ml_IN;
getUnicodeScripts_mn_MN;
getUnicodeScripts_mr_IN;
diff --git a/i18npool/source/localedata/data/ltg_LV.xml b/i18npool/source/localedata/data/ltg_LV.xml
index c41c38c86b9c..7d4445d26426 100644
--- a/i18npool/source/localedata/data/ltg_LV.xml
+++ b/i18npool/source/localedata/data/ltg_LV.xml
@@ -65,23 +65,23 @@
<FormatElement msgid="PercentFormatskey2" default="true" type="long" usage="PERCENT_NUMBER" formatindex="9">
<FormatCode>0,00%</FormatCode>
</FormatElement>
- <FormatElement msgid="CurrencyFormatskey1" default="true" type="short" usage="CURRENCY" formatindex="12">
- <FormatCode># ##0[$Ls-64B];-# ##0[$Ls-64B]</FormatCode>
+ <FormatElement msgid="CurrencyFormatskey1" default="true" type="short" usage="CURRENCY" formatindex="12">
+ <FormatCode>[$Ls-64B] # ##0;[$Ls-64B] -# ##0</FormatCode>
</FormatElement>
- <FormatElement msgid="CurrencyFormatskey2" default="false" type="medium" usage="CURRENCY" formatindex="13">
- <FormatCode># ##0,00[$Ls-64B];-# ##0,00[$Ls-64B]</FormatCode>
+ <FormatElement msgid="CurrencyFormatskey2" default="false" type="medium" usage="CURRENCY" formatindex="13">
+ <FormatCode>[$Ls-64B] # ##0,00;[$Ls-64B] -# ##0,00</FormatCode>
</FormatElement>
- <FormatElement msgid="CurrencyFormatskey3" default="false" type="medium" usage="CURRENCY" formatindex="14">
- <FormatCode># ##0[$Ls-64B];[RED]-# ##0[$Ls-64B]</FormatCode>
+ <FormatElement msgid="CurrencyFormatskey3" default="false" type="medium" usage="CURRENCY" formatindex="14">
+ <FormatCode>[$Ls-64B] # ##0;[RED][$Ls-64B] -# ##0</FormatCode>
</FormatElement>
- <FormatElement msgid="CurrencyFormatskey4" default="true" type="medium" usage="CURRENCY" formatindex="15">
- <FormatCode># ##0,00[$Ls-64B];[RED]-# ##0,00[$Ls-64B]</FormatCode>
+ <FormatElement msgid="CurrencyFormatskey4" default="true" type="medium" usage="CURRENCY" formatindex="15">
+ <FormatCode>[$Ls-64B] # ##0,00;[RED][$Ls-64B] -# ##0,00</FormatCode>
</FormatElement>
- <FormatElement msgid="CurrencyFormatskey5" default="false" type="medium" usage="CURRENCY" formatindex="16">
+ <FormatElement msgid="CurrencyFormatskey5" default="false" type="medium" usage="CURRENCY" formatindex="16">
<FormatCode># ##0,00 CCC</FormatCode>
</FormatElement>
- <FormatElement msgid="CurrencyFormatskey6" default="false" type="medium" usage="CURRENCY" formatindex="17">
- <FormatCode># ##0,--[$Ls-64B];[RED]-# ##0,--[$Ls-64B]</FormatCode>
+ <FormatElement msgid="CurrencyFormatskey6" default="false" type="medium" usage="CURRENCY" formatindex="17">
+ <FormatCode>[$Ls-64B] # ##0,--;[RED][$Ls-64B] -# ##0,--</FormatCode>
</FormatElement>
<FormatElement msgid="DateFormatskey11" default="true" type="short" usage="DATE" formatindex="18">
<FormatCode>D.MM.YY</FormatCode>
diff --git a/i18npool/source/localedata/data/lv_LV.xml b/i18npool/source/localedata/data/lv_LV.xml
index ab76b4930bc6..0144bb4787cc 100644
--- a/i18npool/source/localedata/data/lv_LV.xml
+++ b/i18npool/source/localedata/data/lv_LV.xml
@@ -66,28 +66,28 @@
<FormatCode>0,00%</FormatCode>
</FormatElement>
<FormatElement msgid="CurrencyFormatskey1" default="true" type="short" usage="CURRENCY" formatindex="12">
- <FormatCode># ##0[$Ls-426];-# ##0[$Ls-426]</FormatCode>
+ <FormatCode>[$Ls-426] # ##0;[$Ls-426] -# ##0</FormatCode>
</FormatElement>
<FormatElement msgid="CurrencyFormatskey2" default="false" type="medium" usage="CURRENCY" formatindex="13">
- <FormatCode># ##0,00[$Ls-426];-# ##0,00[$Ls-426]</FormatCode>
+ <FormatCode>[$Ls-426] # ##0,00;[$Ls-426] -# ##0,00</FormatCode>
</FormatElement>
<FormatElement msgid="CurrencyFormatskey3" default="false" type="medium" usage="CURRENCY" formatindex="14">
- <FormatCode># ##0[$Ls-426];[RED]-# ##0[$Ls-426]</FormatCode>
+ <FormatCode>[$Ls-426] # ##0;[RED][$Ls-426] -# ##0</FormatCode>
</FormatElement>
<FormatElement msgid="CurrencyFormatskey4" default="true" type="medium" usage="CURRENCY" formatindex="15">
- <FormatCode># ##0,00[$Ls-426];[RED]-# ##0,00[$Ls-426]</FormatCode>
+ <FormatCode>[$Ls-426] # ##0,00;[RED][$Ls-426] -# ##0,00</FormatCode>
</FormatElement>
<FormatElement msgid="CurrencyFormatskey5" default="false" type="medium" usage="CURRENCY" formatindex="16">
<FormatCode># ##0,00 CCC</FormatCode>
</FormatElement>
<FormatElement msgid="CurrencyFormatskey6" default="false" type="medium" usage="CURRENCY" formatindex="17">
- <FormatCode># ##0,--[$Ls-426];[RED]-# ##0,--[$Ls-426]</FormatCode>
+ <FormatCode>[$Ls-426] # ##0,--;[RED][$Ls-426] -# ##0,--</FormatCode>
</FormatElement>
<FormatElement msgid="DateFormatskey1" default="true" type="short" usage="DATE" formatindex="18">
<FormatCode>D.M.YY</FormatCode>
</FormatElement>
<FormatElement msgid="DateFormatskey9" default="true" type="long" usage="DATE" formatindex="19">
- <FormatCode>DD. NNNNMMMM, YYYY</FormatCode>
+ <FormatCode>YYYY. "gada" DD. MMMM, NNNN</FormatCode>
</FormatElement>
<FormatElement msgid="DateFormatskey8" default="true" type="medium" usage="DATE" formatindex="20">
<FormatCode>DD.MM.YY</FormatCode>
@@ -120,7 +120,7 @@
<FormatCode>NN, D. MMMM, YYYY</FormatCode>
</FormatElement>
<FormatElement msgid="DateFormatskey15" default="false" type="long" usage="DATE" formatindex="30">
- <FormatCode>NNNNMMMM D, YYYY</FormatCode>
+ <FormatCode>NNNN, YYYY. "gada" DD. MMMM</FormatCode>
</FormatElement>
<FormatElement msgid="DateFormatskey18" default="false" type="short" usage="DATE" formatindex="31">
<FormatCode>DD-MM</FormatCode>
diff --git a/i18npool/source/localedata/data/mai_IN.xml b/i18npool/source/localedata/data/mai_IN.xml
new file mode 100644
index 000000000000..07c3d39c6a9d
--- /dev/null
+++ b/i18npool/source/localedata/data/mai_IN.xml
@@ -0,0 +1,357 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE Locale SYSTEM 'locale.dtd'>
+<Locale versionDTD="2.0.3" allowUpdateFromCLDR="no" version="1.0">
+ <LC_INFO>
+ <Language>
+ <LangID>mai</LangID>
+ <DefaultName>Maithili</DefaultName>
+ </Language>
+ <Country>
+ <CountryID>IN</CountryID>
+ <DefaultName>India</DefaultName>
+ </Country>
+ </LC_INFO>
+ <LC_CTYPE unoid="generic">
+ <Separators>
+ <DateSeparator>.</DateSeparator>
+ <ThousandSeparator>,</ThousandSeparator>
+ <DecimalSeparator>.</DecimalSeparator>
+ <TimeSeparator>:</TimeSeparator>
+ <Time100SecSeparator>.</Time100SecSeparator>
+ <ListSeparator>;</ListSeparator>
+ <LongDateDayOfWeekSeparator>, </LongDateDayOfWeekSeparator>
+ <LongDateDaySeparator>, </LongDateDaySeparator>
+ <LongDateMonthSeparator> </LongDateMonthSeparator>
+ <LongDateYearSeparator> </LongDateYearSeparator>
+ </Separators>
+ <Markers>
+ <QuotationStart>‘</QuotationStart>
+ <QuotationEnd>’</QuotationEnd>
+ <DoubleQuotationStart>“</DoubleQuotationStart>
+ <DoubleQuotationEnd>”</DoubleQuotationEnd>
+ </Markers>
+ <TimeAM>पूर्वाह्न</TimeAM>
+ <TimePM>अपराह्न</TimePM>
+ <MeasurementSystem>metric</MeasurementSystem>
+ </LC_CTYPE>
+ <LC_FORMAT replaceFrom="[CURRENCY]" replaceTo="[$रू.-645]">
+ <FormatElement msgid="FixedFormatskey1" default="true" type="medium" usage="FIXED_NUMBER" formatindex="0">
+ <FormatCode>General</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey2" default="true" type="short" usage="FIXED_NUMBER" formatindex="1">
+ <FormatCode>0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey3" default="false" type="medium" usage="FIXED_NUMBER" formatindex="2">
+ <FormatCode>0.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey4" default="false" type="short" usage="FIXED_NUMBER" formatindex="3">
+ <FormatCode>#,##0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey5" default="false" type="medium" usage="FIXED_NUMBER" formatindex="4">
+ <FormatCode>#,##0.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey6" default="false" type="medium" usage="FIXED_NUMBER" formatindex="5">
+ <FormatCode>#,###.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="ScientificFormatskey1" default="true" type="medium" usage="SCIENTIFIC_NUMBER" formatindex="6">
+ <FormatCode>0.00E+00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="ScientificFormatskey2" default="false" type="medium" usage="SCIENTIFIC_NUMBER" formatindex="7">
+ <FormatCode>0.00E+000</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="PercentFormatskey1" default="true" type="short" usage="PERCENT_NUMBER" formatindex="8">
+ <FormatCode>0%</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="PercentFormatskey2" default="true" type="long" usage="PERCENT_NUMBER" formatindex="9">
+ <FormatCode>0.00%</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey1" default="true" type="short" usage="CURRENCY" formatindex="12">
+ <FormatCode>[CURRENCY]#,##0;-[CURRENCY]#,##0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey2" default="false" type="medium" usage="CURRENCY" formatindex="13">
+ <FormatCode>[CURRENCY]#,##0.00;-[CURRENCY]#,##0.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey3" default="false" type="medium" usage="CURRENCY" formatindex="14">
+ <FormatCode>[CURRENCY]#,##0;[RED]-[CURRENCY]#,##0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey4" default="true" type="medium" usage="CURRENCY" formatindex="15">
+ <FormatCode>[CURRENCY]#,##0.00;[RED]-[CURRENCY]#,##0.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey5" default="false" type="medium" usage="CURRENCY" formatindex="16">
+ <FormatCode>CCC#,##0.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey6" default="false" type="medium" usage="CURRENCY" formatindex="17">
+ <FormatCode>[CURRENCY]#,##0.--;[RED]-[CURRENCY]#,##0.--</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey11" default="true" type="short" usage="DATE" formatindex="18">
+ <FormatCode>D.MM.YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey14" default="true" type="long" usage="DATE" formatindex="19">
+ <FormatCode>NNNNDD, MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey6" default="true" type="medium" usage="DATE" formatindex="20">
+ <FormatCode>DD.MM.YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey5" default="false" type="medium" usage="DATE" formatindex="21">
+ <FormatCode>DD.MM.YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey15" default="false" type="long" usage="DATE" formatindex="22">
+ <FormatCode>D, MMM YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey16" default="false" type="long" usage="DATE" formatindex="23">
+ <FormatCode>D, MMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey21" default="false" type="long" usage="DATE" formatindex="24">
+ <FormatCode>D, MMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey17" default="false" type="long" usage="DATE" formatindex="25">
+ <FormatCode>D, MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey22" default="false" type="long" usage="DATE" formatindex="26">
+ <FormatCode>D, MMMM YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey10" default="false" type="medium" usage="DATE" formatindex="27">
+ <FormatCode>NN, DD.MMM.YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey18" default="false" type="long" usage="DATE" formatindex="28">
+ <FormatCode>NN, D, MMM YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey19" default="false" type="long" usage="DATE" formatindex="29">
+ <FormatCode>NN, D, MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey20" default="false" type="long" usage="DATE" formatindex="30">
+ <FormatCode>NNNND, MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey12" default="false" type="short" usage="DATE" formatindex="31">
+ <FormatCode>MM.DD</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey7" default="false" type="medium" usage="DATE" formatindex="32">
+ <FormatCode>YY-MM-DD</FormatCode>
+ <DefaultName>ISO 8601</DefaultName>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey8" default="false" type="medium" usage="DATE" formatindex="33">
+ <FormatCode>YYYY-MM-DD</FormatCode>
+ <DefaultName>ISO 8601</DefaultName>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey1" default="false" type="medium" usage="DATE" formatindex="34">
+ <FormatCode>MM.YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey2" default="false" type="medium" usage="DATE" formatindex="35">
+ <FormatCode>MMM.DD</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey3" default="false" type="medium" usage="DATE" formatindex="36">
+ <FormatCode>MMMM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey4" default="false" type="medium" usage="DATE" formatindex="37">
+ <FormatCode>QQ YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey9" default="false" type="medium" usage="DATE" formatindex="38">
+ <FormatCode>WW</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey1" default="false" type="short" usage="TIME" formatindex="39">
+ <FormatCode>HH:MM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey2" default="false" type="medium" usage="TIME" formatindex="40">
+ <FormatCode>HH:MM:SS</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey3" default="true" type="short" usage="TIME" formatindex="41">
+ <FormatCode>HH:MM AM/PM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey4" default="true" type="medium" usage="TIME" formatindex="42">
+ <FormatCode>HH:MM:SS AM/PM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey5" default="false" type="medium" usage="TIME" formatindex="43">
+ <FormatCode>[HH]:MM:SS</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey6" default="false" type="short" usage="TIME" formatindex="44">
+ <FormatCode>MM:SS.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey7" default="false" type="medium" usage="TIME" formatindex="45">
+ <FormatCode>[HH]:MM:SS.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateTimeFormatskey1" default="true" type="medium" usage="DATE_TIME" formatindex="46">
+ <FormatCode>DD.MM.YY HH:MM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateTimeFormatskey2" default="false" type="medium" usage="DATE_TIME" formatindex="47">
+ <FormatCode>DD.MM.YYYY HH:MM:SS AM/PM</FormatCode>
+ </FormatElement>
+ </LC_FORMAT>
+ <LC_COLLATION>
+ <Collator default="true" unoid="alphanumeric"/>
+ <CollationOptions>
+ <TransliterationModules>IGNORE_CASE</TransliterationModules>
+ </CollationOptions>
+ </LC_COLLATION>
+ <LC_SEARCH>
+ <SearchOptions>
+ <TransliterationModules>IGNORE_CASE</TransliterationModules>
+ </SearchOptions>
+ </LC_SEARCH>
+ <LC_INDEX>
+ <IndexKey phonetic="false" default="true" unoid="alphanumeric">अ-ह</IndexKey>
+ <UnicodeScript>14</UnicodeScript>
+ <FollowPageWord>आ.पृ.</FollowPageWord>
+ <FollowPageWord>आ.पृ.</FollowPageWord>
+ </LC_INDEX>
+ <LC_CALENDAR>
+ <Calendar unoid="gregorian" default="true">
+ <DaysOfWeek>
+ <Day>
+ <DayID>sun</DayID>
+ <DefaultAbbrvName>रवि</DefaultAbbrvName>
+ <DefaultFullName>रविवार</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>mon</DayID>
+ <DefaultAbbrvName>सोम</DefaultAbbrvName>
+ <DefaultFullName>सोमवार</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>tue</DayID>
+ <DefaultAbbrvName>मंगल</DefaultAbbrvName>
+ <DefaultFullName>मंगलवार</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>wed</DayID>
+ <DefaultAbbrvName>बुध</DefaultAbbrvName>
+ <DefaultFullName>बुधवार</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>thu</DayID>
+ <DefaultAbbrvName>गुरु</DefaultAbbrvName>
+ <DefaultFullName>गुरुवार</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>fri</DayID>
+ <DefaultAbbrvName>शुक्र</DefaultAbbrvName>
+ <DefaultFullName>शुक्रवार</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>sat</DayID>
+ <DefaultAbbrvName>शनि</DefaultAbbrvName>
+ <DefaultFullName>शनिवार</DefaultFullName>
+ </Day>
+ </DaysOfWeek>
+ <MonthsOfYear>
+ <Month>
+ <MonthID>jan</MonthID>
+ <DefaultAbbrvName>जन</DefaultAbbrvName>
+ <DefaultFullName>जनवरी</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>feb</MonthID>
+ <DefaultAbbrvName>फर</DefaultAbbrvName>
+ <DefaultFullName>फरवरी</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>mar</MonthID>
+ <DefaultAbbrvName>मार्च</DefaultAbbrvName>
+ <DefaultFullName>मार्च</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>apr</MonthID>
+ <DefaultAbbrvName>अप्रै</DefaultAbbrvName>
+ <DefaultFullName>अप्रैल</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>may</MonthID>
+ <DefaultAbbrvName>मई</DefaultAbbrvName>
+ <DefaultFullName>मई</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>jun</MonthID>
+ <DefaultAbbrvName>जून</DefaultAbbrvName>
+ <DefaultFullName>जून</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>jul</MonthID>
+ <DefaultAbbrvName>जुला</DefaultAbbrvName>
+ <DefaultFullName>जुलाई</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>aug</MonthID>
+ <DefaultAbbrvName>अग</DefaultAbbrvName>
+ <DefaultFullName>अगस्त</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>sep</MonthID>
+ <DefaultAbbrvName>सित</DefaultAbbrvName>
+ <DefaultFullName>सितम्बर</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>oct</MonthID>
+ <DefaultAbbrvName>अक्टू</DefaultAbbrvName>
+ <DefaultFullName>अक्टूबर</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>nov</MonthID>
+ <DefaultAbbrvName>नव</DefaultAbbrvName>
+ <DefaultFullName>नवम्बर</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>dec</MonthID>
+ <DefaultAbbrvName>दिस</DefaultAbbrvName>
+ <DefaultFullName>दिसम्बर</DefaultFullName>
+ </Month>
+ </MonthsOfYear>
+ <Eras>
+ <Era>
+ <EraID>bc</EraID>
+ <DefaultAbbrvName>ई.पू.</DefaultAbbrvName>
+ <DefaultFullName>ईस्वी पूर्व</DefaultFullName>
+ </Era>
+ <Era>
+ <EraID>ad</EraID>
+ <DefaultAbbrvName>ई.</DefaultAbbrvName>
+ <DefaultFullName>ईस्वी</DefaultFullName>
+ </Era>
+ </Eras>
+ <StartDayOfWeek>
+ <DayID>sun</DayID>
+ </StartDayOfWeek>
+ <MinimalDaysInFirstWeek>1</MinimalDaysInFirstWeek>
+ </Calendar>
+ </LC_CALENDAR>
+ <LC_CURRENCY>
+ <Currency default="true" usedInCompatibleFormatCodes="true">
+ <CurrencyID>INR</CurrencyID>
+ <CurrencySymbol>रू.</CurrencySymbol>
+ <BankSymbol>INR</BankSymbol>
+ <CurrencyName>रुपया</CurrencyName>
+ <DecimalPlaces>2</DecimalPlaces>
+ </Currency>
+ </LC_CURRENCY>
+ <LC_TRANSLITERATION>
+ <Transliteration unoid="LOWERCASE_UPPERCASE"/>
+ <Transliteration unoid="UPPERCASE_LOWERCASE"/>
+ <Transliteration unoid="IGNORE_CASE"/>
+ </LC_TRANSLITERATION>
+ <LC_MISC>
+ <ReservedWords>
+ <trueWord>सही</trueWord>
+ <falseWord>गलत</falseWord>
+ <quarter1Word>पहिल तीन मास</quarter1Word>
+ <quarter2Word>दोसर तीन मास</quarter2Word>
+ <quarter3Word>तेसर तीन मास</quarter3Word>
+ <quarter4Word>चौथा तीन मास</quarter4Word>
+ <aboveWord>उप्पर</aboveWord>
+ <belowWord>नीच्चाँ</belowWord>
+ <quarter1Abbreviation>पहिल चौथाई</quarter1Abbreviation>
+ <quarter2Abbreviation>दोसर चौथाई</quarter2Abbreviation>
+ <quarter3Abbreviation>तेसर चौथाई</quarter3Abbreviation>
+ <quarter4Abbreviation>चौथा चौथाई</quarter4Abbreviation>
+ </ReservedWords>
+ </LC_MISC>
+ <LC_NumberingLevel>
+ <NumberingLevel NumType="4" Prefix=" " Suffix=")"/>
+ <NumberingLevel NumType="4" Prefix="(" Suffix="."/>
+ <NumberingLevel NumType="4" Prefix="(" Suffix=")"/>
+ <NumberingLevel NumType="2" Prefix=" " Suffix="."/>
+ <NumberingLevel NumType="0" Prefix=" " Suffix=")"/>
+ <NumberingLevel NumType="1" Prefix=" " Suffix=")"/>
+ <NumberingLevel NumType="1" Prefix="(" Suffix=")"/>
+ <NumberingLevel NumType="3" Prefix=" " Suffix="."/>
+ </LC_NumberingLevel>
+ <LC_OutLineNumberingLevel ref="en_US"/>
+</Locale>
+<!--Version 1.0 -->
diff --git a/i18npool/source/localedata/data/makefile.mk b/i18npool/source/localedata/data/makefile.mk
index 2591b70fb63d..1034de7f11bf 100644
--- a/i18npool/source/localedata/data/makefile.mk
+++ b/i18npool/source/localedata/data/makefile.mk
@@ -39,6 +39,14 @@ LIBTARGET=NO
debug!=
.ENDIF
+.IF "$(OS)" == "WNT"
+my_file = file:///
+.ELSE
+my_file = file://
+.END
+
+my_components = sax.inbuild
+
# --- Settings -----------------------------------------------------
.INCLUDE : settings.mk
@@ -62,187 +70,6 @@ LINK_LOCALEDATA_ES_LIB=-l$(SHL2TARGET)
# --- Files --------------------------------------------------------
-# Interim files generated by the saxparser executable, for dependencies
-MY_MISC_CXXFILES = \
- $(MISC)$/localedata_af_NA.cxx \
- $(MISC)$/localedata_af_ZA.cxx \
- $(MISC)$/localedata_ak_GH.cxx \
- $(MISC)$/localedata_am_ET.cxx \
- $(MISC)$/localedata_ar_EG.cxx \
- $(MISC)$/localedata_ar_LB.cxx \
- $(MISC)$/localedata_ar_SA.cxx \
- $(MISC)$/localedata_ar_TN.cxx \
- $(MISC)$/localedata_ast_ES.cxx \
- $(MISC)$/localedata_az_AZ.cxx \
- $(MISC)$/localedata_be_BY.cxx \
- $(MISC)$/localedata_bg_BG.cxx \
- $(MISC)$/localedata_bn_IN.cxx \
- $(MISC)$/localedata_bn_BD.cxx \
- $(MISC)$/localedata_br_FR.cxx \
- $(MISC)$/localedata_bs_BA.cxx \
- $(MISC)$/localedata_ca_ES.cxx \
- $(MISC)$/localedata_cs_CZ.cxx \
- $(MISC)$/localedata_cv_RU.cxx \
- $(MISC)$/localedata_cy_GB.cxx \
- $(MISC)$/localedata_da_DK.cxx \
- $(MISC)$/localedata_de_AT.cxx \
- $(MISC)$/localedata_de_CH.cxx \
- $(MISC)$/localedata_de_DE.cxx \
- $(MISC)$/localedata_de_LI.cxx \
- $(MISC)$/localedata_de_LU.cxx \
- $(MISC)$/localedata_dz_BT.cxx \
- $(MISC)$/localedata_ee_GH.cxx \
- $(MISC)$/localedata_el_GR.cxx \
- $(MISC)$/localedata_en_AU.cxx \
- $(MISC)$/localedata_en_BZ.cxx \
- $(MISC)$/localedata_en_CA.cxx \
- $(MISC)$/localedata_en_GB.cxx \
- $(MISC)$/localedata_en_GH.cxx \
- $(MISC)$/localedata_en_IE.cxx \
- $(MISC)$/localedata_en_IN.cxx \
- $(MISC)$/localedata_en_JM.cxx \
- $(MISC)$/localedata_en_NA.cxx \
- $(MISC)$/localedata_en_NZ.cxx \
- $(MISC)$/localedata_en_PH.cxx \
- $(MISC)$/localedata_en_TT.cxx \
- $(MISC)$/localedata_en_US.cxx \
- $(MISC)$/localedata_en_ZA.cxx \
- $(MISC)$/localedata_en_ZW.cxx \
- $(MISC)$/localedata_eo.cxx \
- $(MISC)$/localedata_es_AR.cxx \
- $(MISC)$/localedata_es_BO.cxx \
- $(MISC)$/localedata_es_CL.cxx \
- $(MISC)$/localedata_es_CO.cxx \
- $(MISC)$/localedata_es_CR.cxx \
- $(MISC)$/localedata_es_DO.cxx \
- $(MISC)$/localedata_es_EC.cxx \
- $(MISC)$/localedata_es_ES.cxx \
- $(MISC)$/localedata_es_GT.cxx \
- $(MISC)$/localedata_es_HN.cxx \
- $(MISC)$/localedata_es_MX.cxx \
- $(MISC)$/localedata_es_NI.cxx \
- $(MISC)$/localedata_es_PA.cxx \
- $(MISC)$/localedata_es_PE.cxx \
- $(MISC)$/localedata_es_PR.cxx \
- $(MISC)$/localedata_es_PY.cxx \
- $(MISC)$/localedata_es_SV.cxx \
- $(MISC)$/localedata_es_UY.cxx \
- $(MISC)$/localedata_es_VE.cxx \
- $(MISC)$/localedata_et_EE.cxx \
- $(MISC)$/localedata_eu.cxx \
- $(MISC)$/localedata_fa_IR.cxx \
- $(MISC)$/localedata_fi_FI.cxx \
- $(MISC)$/localedata_fo_FO.cxx \
- $(MISC)$/localedata_fr_BE.cxx \
- $(MISC)$/localedata_fr_CA.cxx \
- $(MISC)$/localedata_fr_CH.cxx \
- $(MISC)$/localedata_fr_FR.cxx \
- $(MISC)$/localedata_fr_LU.cxx \
- $(MISC)$/localedata_fr_MC.cxx \
- $(MISC)$/localedata_fur_IT.cxx \
- $(MISC)$/localedata_fy_NL.cxx \
- $(MISC)$/localedata_ga_IE.cxx \
- $(MISC)$/localedata_gl_ES.cxx \
- $(MISC)$/localedata_gsc_FR.cxx \
- $(MISC)$/localedata_gu_IN.cxx \
- $(MISC)$/localedata_gug_PY.cxx \
- $(MISC)$/localedata_ha_GH.cxx \
- $(MISC)$/localedata_he_IL.cxx \
- $(MISC)$/localedata_hi_IN.cxx \
- $(MISC)$/localedata_hil_PH.cxx \
- $(MISC)$/localedata_hr_HR.cxx \
- $(MISC)$/localedata_hsb_DE.cxx \
- $(MISC)$/localedata_hu_HU.cxx \
- $(MISC)$/localedata_hy_AM.cxx \
- $(MISC)$/localedata_ia.cxx \
- $(MISC)$/localedata_id_ID.cxx \
- $(MISC)$/localedata_is_IS.cxx \
- $(MISC)$/localedata_it_CH.cxx \
- $(MISC)$/localedata_it_IT.cxx \
- $(MISC)$/localedata_ja_JP.cxx \
- $(MISC)$/localedata_ka_GE.cxx \
- $(MISC)$/localedata_kk_KZ.cxx \
- $(MISC)$/localedata_kl_GL.cxx \
- $(MISC)$/localedata_km_KH.cxx \
- $(MISC)$/localedata_kn_IN.cxx \
- $(MISC)$/localedata_ko_KR.cxx \
- $(MISC)$/localedata_ku_TR.cxx \
- $(MISC)$/localedata_ky_KG.cxx \
- $(MISC)$/localedata_la_VA.cxx \
- $(MISC)$/localedata_lb_LU.cxx \
- $(MISC)$/localedata_lg_UG.cxx \
- $(MISC)$/localedata_ln_CD.cxx \
- $(MISC)$/localedata_lo_LA.cxx \
- $(MISC)$/localedata_lt_LT.cxx \
- $(MISC)$/localedata_ltg_LV.cxx \
- $(MISC)$/localedata_lv_LV.cxx \
- $(MISC)$/localedata_mk_MK.cxx \
- $(MISC)$/localedata_ml_IN.cxx \
- $(MISC)$/localedata_mn_MN.cxx \
- $(MISC)$/localedata_mr_IN.cxx \
- $(MISC)$/localedata_ms_MY.cxx \
- $(MISC)$/localedata_mt_MT.cxx \
- $(MISC)$/localedata_my_MM.cxx \
- $(MISC)$/localedata_nb_NO.cxx \
- $(MISC)$/localedata_ne_NP.cxx \
- $(MISC)$/localedata_nl_BE.cxx \
- $(MISC)$/localedata_nl_NL.cxx \
- $(MISC)$/localedata_nn_NO.cxx \
- $(MISC)$/localedata_no_NO.cxx \
- $(MISC)$/localedata_nr_ZA.cxx \
- $(MISC)$/localedata_nso_ZA.cxx \
- $(MISC)$/localedata_oc_FR.cxx \
- $(MISC)$/localedata_om_ET.cxx \
- $(MISC)$/localedata_or_IN.cxx \
- $(MISC)$/localedata_pa_IN.cxx \
- $(MISC)$/localedata_pl_PL.cxx \
- $(MISC)$/localedata_plt_MG.cxx \
- $(MISC)$/localedata_pt_BR.cxx \
- $(MISC)$/localedata_pt_PT.cxx \
- $(MISC)$/localedata_ro_RO.cxx \
- $(MISC)$/localedata_ru_RU.cxx \
- $(MISC)$/localedata_rw_RW.cxx \
- $(MISC)$/localedata_sg_CF.cxx \
- $(MISC)$/localedata_sh_ME.cxx \
- $(MISC)$/localedata_sh_RS.cxx \
- $(MISC)$/localedata_sh_YU.cxx \
- $(MISC)$/localedata_shs_CA.cxx \
- $(MISC)$/localedata_sk_SK.cxx \
- $(MISC)$/localedata_sl_SI.cxx \
- $(MISC)$/localedata_so_SO.cxx \
- $(MISC)$/localedata_sr_ME.cxx \
- $(MISC)$/localedata_sr_RS.cxx \
- $(MISC)$/localedata_sr_YU.cxx \
- $(MISC)$/localedata_ss_ZA.cxx \
- $(MISC)$/localedata_st_ZA.cxx \
- $(MISC)$/localedata_sv_FI.cxx \
- $(MISC)$/localedata_sv_SE.cxx \
- $(MISC)$/localedata_sw_TZ.cxx \
- $(MISC)$/localedata_ta_IN.cxx \
- $(MISC)$/localedata_te_IN.cxx \
- $(MISC)$/localedata_tg_TJ.cxx \
- $(MISC)$/localedata_th_TH.cxx \
- $(MISC)$/localedata_ti_ER.cxx \
- $(MISC)$/localedata_tk_TM.cxx \
- $(MISC)$/localedata_tn_ZA.cxx \
- $(MISC)$/localedata_tpi_PG.cxx \
- $(MISC)$/localedata_tr_TR.cxx \
- $(MISC)$/localedata_ts_ZA.cxx \
- $(MISC)$/localedata_ug_CN.cxx \
- $(MISC)$/localedata_uk_UA.cxx \
- $(MISC)$/localedata_uz_UZ.cxx \
- $(MISC)$/localedata_ve_ZA.cxx \
- $(MISC)$/localedata_vi_VN.cxx \
- $(MISC)$/localedata_wa_BE.cxx \
- $(MISC)$/localedata_xh_ZA.cxx \
- $(MISC)$/localedata_zh_CN.cxx \
- $(MISC)$/localedata_zh_HK.cxx \
- $(MISC)$/localedata_zh_MO.cxx \
- $(MISC)$/localedata_zh_SG.cxx \
- $(MISC)$/localedata_zh_TW.cxx \
- $(MISC)$/localedata_zu_ZA.cxx
-
-
# English Locales
SHL1TARGET=localedata_en
.IF "$(GUI)" == "OS2"
@@ -378,8 +205,9 @@ SHL3OBJS= \
$(SLO)$/localedata_pl_PL.obj \
$(SLO)$/localedata_pt_BR.obj \
$(SLO)$/localedata_pt_PT.obj \
- $(SLO)$/localedata_ru_RU.obj \
$(SLO)$/localedata_ro_RO.obj \
+ $(SLO)$/localedata_rue_SK.obj \
+ $(SLO)$/localedata_ru_RU.obj \
$(SLO)$/localedata_sc_IT.obj \
$(SLO)$/localedata_sh_ME.obj \
$(SLO)$/localedata_sh_RS.obj \
@@ -416,6 +244,7 @@ SHL4OBJS= \
$(SLO)$/localedata_af_ZA.obj \
$(SLO)$/localedata_ak_GH.obj \
$(SLO)$/localedata_am_ET.obj \
+ $(SLO)$/localedata_ar_DZ.obj \
$(SLO)$/localedata_ar_EG.obj \
$(SLO)$/localedata_ar_LB.obj \
$(SLO)$/localedata_ar_OM.obj \
@@ -449,6 +278,7 @@ SHL4OBJS= \
$(SLO)$/localedata_lg_UG.obj \
$(SLO)$/localedata_ln_CD.obj \
$(SLO)$/localedata_lo_LA.obj \
+ $(SLO)$/localedata_mai_IN.obj \
$(SLO)$/localedata_ml_IN.obj \
$(SLO)$/localedata_mn_MN.obj \
$(SLO)$/localedata_mr_IN.obj \
@@ -498,13 +328,28 @@ DEPOBJFILES= \
$(SHL3OBJS) \
$(SHL4OBJS)
+# Interim files generated by the saxparser executable, for dependencies
+MY_MISC_CXXFILES := $(foreach,i,$(DEPOBJFILES) $(MISC)/$(i:b).cxx)
+
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk
-$(MY_MISC_CXXFILES) : $(BIN)$/saxparser$(EXECPOST)
+$(MY_MISC_CXXFILES) : $(BIN)$/saxparser$(EXECPOST) $(MISC)/saxparser.rdb
$(MISC)$/localedata_%.cxx : %.xml
- $(AUGMENT_LIBRARY_PATH) $(WRAPCMD) $(BIN)$/saxparser $* $< $@ $(BIN)$/$(@:b).rdb $(SOLARBINDIR)$/types.rdb
+ $(AUGMENT_LIBRARY_PATH) $(WRAPCMD) $(BIN)$/saxparser $* $< $@ \
+ $(my_file)$(PWD)/$(MISC)/saxparser.rdb $(SOLARBINDIR)$/types.rdb \
+ -env:OOO_INBUILD_SHAREDLIB_DIR=$(my_file)$(SOLARSHAREDBIN)
$(RM) $(BIN)$/$(@:b).rdb
+$(MISC)/saxparser.rdb .ERRREMOVE : $(SOLARENV)/bin/packcomponents.xslt \
+ $(MISC)/saxparser.input \
+ $(my_components:^"$(SOLARXMLDIR)/":+".component")
+ $(XSLTPROC) --nonet --stringparam prefix $(SOLARXMLDIR)/ -o $@ \
+ $(SOLARENV)/bin/packcomponents.xslt $(MISC)/saxparser.input
+
+$(MISC)/saxparser.input :
+ echo \
+ '<list>$(my_components:^"<filename>":+".component</filename>")</list>' \
+ > $@
diff --git a/i18npool/source/localedata/data/rue_SK.xml b/i18npool/source/localedata/data/rue_SK.xml
new file mode 100644
index 000000000000..86b22d5c5a2e
--- /dev/null
+++ b/i18npool/source/localedata/data/rue_SK.xml
@@ -0,0 +1,359 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE Locale SYSTEM 'locale.dtd'>
+<Locale versionDTD="2.0.3" allowUpdateFromCLDR="no" version="1.0">
+ <LC_INFO>
+ <Language>
+ <LangID>rue</LangID>
+ <DefaultName>Rusyn</DefaultName>
+ </Language>
+ <Country>
+ <CountryID>SK</CountryID>
+ <DefaultName>Slovakia</DefaultName>
+ </Country>
+ </LC_INFO>
+ <LC_CTYPE unoid="generic">
+ <Separators>
+ <DateSeparator>/</DateSeparator>
+ <ThousandSeparator>,</ThousandSeparator>
+ <DecimalSeparator>.</DecimalSeparator>
+ <TimeSeparator>:</TimeSeparator>
+ <Time100SecSeparator>.</Time100SecSeparator>
+ <ListSeparator>;</ListSeparator>
+ <LongDateDayOfWeekSeparator>, </LongDateDayOfWeekSeparator>
+ <LongDateDaySeparator>, </LongDateDaySeparator>
+ <LongDateMonthSeparator> </LongDateMonthSeparator>
+ <LongDateYearSeparator> </LongDateYearSeparator>
+ </Separators>
+ <Markers>
+ <QuotationStart>“</QuotationStart>
+ <QuotationEnd>”</QuotationEnd>
+ <DoubleQuotationStart>‘</DoubleQuotationStart>
+ <DoubleQuotationEnd>’</DoubleQuotationEnd>
+ </Markers>
+ <TimeAM>дообіду</TimeAM>
+ <TimePM>пообідї</TimePM>
+ <MeasurementSystem>metric</MeasurementSystem>
+ </LC_CTYPE>
+ <LC_FORMAT replaceFrom="[CURRENCY]" replaceTo="[$€-8256]">
+ <FormatElement msgid="FixedFormatskey1" default="true" type="medium" usage="FIXED_NUMBER" formatindex="0">
+ <FormatCode>General</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey2" default="true" type="short" usage="FIXED_NUMBER" formatindex="1">
+ <FormatCode>0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey3" default="false" type="medium" usage="FIXED_NUMBER" formatindex="2">
+ <FormatCode>0.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey4" default="false" type="short" usage="FIXED_NUMBER" formatindex="3">
+ <FormatCode>#,##0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey5" default="false" type="medium" usage="FIXED_NUMBER" formatindex="4">
+ <FormatCode>#,##0.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="FixedFormatskey6" default="false" type="medium" usage="FIXED_NUMBER" formatindex="5">
+ <FormatCode>#,###.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="ScientificFormatskey1" default="true" type="medium" usage="SCIENTIFIC_NUMBER" formatindex="6">
+ <FormatCode>0.00E+00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="ScientificFormatskey2" default="false" type="medium" usage="SCIENTIFIC_NUMBER" formatindex="7">
+ <FormatCode>0.00E+000</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="PercentFormatskey1" default="true" type="short" usage="PERCENT_NUMBER" formatindex="8">
+ <FormatCode>0%</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="PercentFormatskey2" default="true" type="long" usage="PERCENT_NUMBER" formatindex="9">
+ <FormatCode>0.00%</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey1" default="true" type="short" usage="CURRENCY" formatindex="12">
+ <FormatCode>[CURRENCY]#,##0;-[CURRENCY]#,##0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey2" default="false" type="medium" usage="CURRENCY" formatindex="13">
+ <FormatCode>[CURRENCY]#,##0.00;-[CURRENCY]#,##0.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey3" default="false" type="medium" usage="CURRENCY" formatindex="14">
+ <FormatCode>[CURRENCY]#,##0;[RED]-[CURRENCY]#,##0</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey4" default="true" type="medium" usage="CURRENCY" formatindex="15">
+ <FormatCode>[CURRENCY]#,##0.00;[RED]-[CURRENCY]#,##0.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey5" default="false" type="medium" usage="CURRENCY" formatindex="16">
+ <FormatCode>CCC#,##0.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="CurrencyFormatskey6" default="false" type="medium" usage="CURRENCY" formatindex="17">
+ <FormatCode>[CURRENCY]#,##0.--;[RED]-[CURRENCY]#,##0.--</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey11" default="true" type="short" usage="DATE" formatindex="18">
+ <FormatCode>D/MM/YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey14" default="true" type="long" usage="DATE" formatindex="19">
+ <FormatCode>NNNNDD, MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey6" default="true" type="medium" usage="DATE" formatindex="20">
+ <FormatCode>DD/MM/YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey5" default="false" type="medium" usage="DATE" formatindex="21">
+ <FormatCode>DD/MM/YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey15" default="false" type="long" usage="DATE" formatindex="22">
+ <FormatCode>D, MMM YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey16" default="false" type="long" usage="DATE" formatindex="23">
+ <FormatCode>D, MMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey21" default="false" type="long" usage="DATE" formatindex="24">
+ <FormatCode>D, MMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey17" default="false" type="long" usage="DATE" formatindex="25">
+ <FormatCode>D, MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey22" default="false" type="long" usage="DATE" formatindex="26">
+ <FormatCode>D, MMMM YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey10" default="false" type="medium" usage="DATE" formatindex="27">
+ <FormatCode>NN, DD/MMM/YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey18" default="false" type="long" usage="DATE" formatindex="28">
+ <FormatCode>NN, D, MMM YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey19" default="false" type="long" usage="DATE" formatindex="29">
+ <FormatCode>NN, D, MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey20" default="false" type="long" usage="DATE" formatindex="30">
+ <FormatCode>NNNND, MMMM YYYY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey12" default="false" type="short" usage="DATE" formatindex="31">
+ <FormatCode>MM/DD</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey7" default="false" type="medium" usage="DATE" formatindex="32">
+ <FormatCode>YY-MM-DD</FormatCode>
+ <DefaultName>ISO 8601</DefaultName>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey8" default="false" type="medium" usage="DATE" formatindex="33">
+ <FormatCode>YYYY-MM-DD</FormatCode>
+ <DefaultName>ISO 8601</DefaultName>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey1" default="false" type="medium" usage="DATE" formatindex="34">
+ <FormatCode>MM/YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey2" default="false" type="medium" usage="DATE" formatindex="35">
+ <FormatCode>MMM/DD</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey3" default="false" type="medium" usage="DATE" formatindex="36">
+ <FormatCode>MMMM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey4" default="false" type="medium" usage="DATE" formatindex="37">
+ <FormatCode>QQ YY</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateFormatskey9" default="false" type="medium" usage="DATE" formatindex="38">
+ <FormatCode>WW</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey1" default="false" type="short" usage="TIME" formatindex="39">
+ <FormatCode>HH:MM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey2" default="false" type="medium" usage="TIME" formatindex="40">
+ <FormatCode>HH:MM:SS</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey3" default="true" type="short" usage="TIME" formatindex="41">
+ <FormatCode>HH:MM AM/PM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey4" default="true" type="medium" usage="TIME" formatindex="42">
+ <FormatCode>HH:MM:SS AM/PM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey5" default="false" type="medium" usage="TIME" formatindex="43">
+ <FormatCode>[HH]:MM:SS</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey6" default="false" type="short" usage="TIME" formatindex="44">
+ <FormatCode>MM:SS.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="TimeFormatskey7" default="false" type="medium" usage="TIME" formatindex="45">
+ <FormatCode>[HH]:MM:SS.00</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateTimeFormatskey1" default="true" type="medium" usage="DATE_TIME" formatindex="46">
+ <FormatCode>DD/MM/YY HH:MM</FormatCode>
+ </FormatElement>
+ <FormatElement msgid="DateTimeFormatskey2" default="false" type="medium" usage="DATE_TIME" formatindex="47">
+ <FormatCode>DD/MM/YYYY HH:MM:SS AM/PM</FormatCode>
+ </FormatElement>
+ </LC_FORMAT>
+ <LC_COLLATION>
+ <Collator default="true" unoid="alphanumeric"/>
+ <CollationOptions>
+ <TransliterationModules>IGNORE_CASE</TransliterationModules>
+ </CollationOptions>
+ </LC_COLLATION>
+ <LC_SEARCH>
+ <SearchOptions>
+ <TransliterationModules>IGNORE_CASE</TransliterationModules>
+ </SearchOptions>
+ </LC_SEARCH>
+ <LC_INDEX>
+ <IndexKey phonetic="false" default="true" unoid="alphanumeric">A-Z</IndexKey>
+ <UnicodeScript>0</UnicodeScript>
+ <UnicodeScript>1</UnicodeScript>
+ <UnicodeScript>8</UnicodeScript>
+ <FollowPageWord>стр.</FollowPageWord>
+ <FollowPageWord>стр.</FollowPageWord>
+ </LC_INDEX>
+ <LC_CALENDAR>
+ <Calendar unoid="gregorian" default="true">
+ <DaysOfWeek>
+ <Day>
+ <DayID>sun</DayID>
+ <DefaultAbbrvName>нед</DefaultAbbrvName>
+ <DefaultFullName>недїля</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>mon</DayID>
+ <DefaultAbbrvName>пон</DefaultAbbrvName>
+ <DefaultFullName>понедїлёк</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>tue</DayID>
+ <DefaultAbbrvName>віт</DefaultAbbrvName>
+ <DefaultFullName>віторок</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>wed</DayID>
+ <DefaultAbbrvName>сер</DefaultAbbrvName>
+ <DefaultFullName>середа</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>thu</DayID>
+ <DefaultAbbrvName>чет</DefaultAbbrvName>
+ <DefaultFullName>четверь</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>fri</DayID>
+ <DefaultAbbrvName>пят</DefaultAbbrvName>
+ <DefaultFullName>пятніця</DefaultFullName>
+ </Day>
+ <Day>
+ <DayID>sat</DayID>
+ <DefaultAbbrvName>суб</DefaultAbbrvName>
+ <DefaultFullName>субота</DefaultFullName>
+ </Day>
+ </DaysOfWeek>
+ <MonthsOfYear>
+ <Month>
+ <MonthID>jan</MonthID>
+ <DefaultAbbrvName>ян</DefaultAbbrvName>
+ <DefaultFullName>януар</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>feb</MonthID>
+ <DefaultAbbrvName>феб</DefaultAbbrvName>
+ <DefaultFullName>фебруар</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>mar</MonthID>
+ <DefaultAbbrvName>мар</DefaultAbbrvName>
+ <DefaultFullName>марец</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>apr</MonthID>
+ <DefaultAbbrvName>апр</DefaultAbbrvName>
+ <DefaultFullName>апріль</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>may</MonthID>
+ <DefaultAbbrvName>май</DefaultAbbrvName>
+ <DefaultFullName>май</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>jun</MonthID>
+ <DefaultAbbrvName>юн</DefaultAbbrvName>
+ <DefaultFullName>юн</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>jul</MonthID>
+ <DefaultAbbrvName>юл</DefaultAbbrvName>
+ <DefaultFullName>юл</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>aug</MonthID>
+ <DefaultAbbrvName>авґ</DefaultAbbrvName>
+ <DefaultFullName>авґуст</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>sep</MonthID>
+ <DefaultAbbrvName>сеп</DefaultAbbrvName>
+ <DefaultFullName>септембер</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>oct</MonthID>
+ <DefaultAbbrvName>окт</DefaultAbbrvName>
+ <DefaultFullName>октобер</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>nov</MonthID>
+ <DefaultAbbrvName>нов</DefaultAbbrvName>
+ <DefaultFullName>новембер</DefaultFullName>
+ </Month>
+ <Month>
+ <MonthID>dec</MonthID>
+ <DefaultAbbrvName>дец</DefaultAbbrvName>
+ <DefaultFullName>децембер</DefaultFullName>
+ </Month>
+ </MonthsOfYear>
+ <Eras>
+ <Era>
+ <EraID>bc</EraID>
+ <DefaultAbbrvName>п.н.е.</DefaultAbbrvName>
+ <DefaultFullName>перед нашов еров</DefaultFullName>
+ </Era>
+ <Era>
+ <EraID>ad</EraID>
+ <DefaultAbbrvName>н.е.</DefaultAbbrvName>
+ <DefaultFullName>нашой еры</DefaultFullName>
+ </Era>
+ </Eras>
+ <StartDayOfWeek>
+ <DayID>mon</DayID>
+ </StartDayOfWeek>
+ <MinimalDaysInFirstWeek>1</MinimalDaysInFirstWeek>
+ </Calendar>
+ </LC_CALENDAR>
+ <LC_CURRENCY>
+ <Currency default="true" usedInCompatibleFormatCodes="true">
+ <CurrencyID>EUR</CurrencyID>
+ <CurrencySymbol>€</CurrencySymbol>
+ <BankSymbol>EUR</BankSymbol>
+ <CurrencyName>евро</CurrencyName>
+ <DecimalPlaces>2</DecimalPlaces>
+ </Currency>
+ </LC_CURRENCY>
+ <LC_TRANSLITERATION>
+ <Transliteration unoid="LOWERCASE_UPPERCASE"/>
+ <Transliteration unoid="UPPERCASE_LOWERCASE"/>
+ <Transliteration unoid="IGNORE_CASE"/>
+ </LC_TRANSLITERATION>
+ <LC_MISC>
+ <ReservedWords>
+ <trueWord>Правда</trueWord>
+ <falseWord>Неправда</falseWord>
+ <quarter1Word>1. четвертина</quarter1Word>
+ <quarter2Word>2. четвертина</quarter2Word>
+ <quarter3Word>3. четвертина</quarter3Word>
+ <quarter4Word>4. четвертина</quarter4Word>
+ <aboveWord>Над</aboveWord>
+ <belowWord>Під</belowWord>
+ <quarter1Abbreviation>1.чет.</quarter1Abbreviation>
+ <quarter2Abbreviation>2.чет.</quarter2Abbreviation>
+ <quarter3Abbreviation>3.чет.</quarter3Abbreviation>
+ <quarter4Abbreviation>4.чет.</quarter4Abbreviation>
+ </ReservedWords>
+ </LC_MISC>
+ <LC_NumberingLevel>
+ <NumberingLevel NumType="4" Prefix=" " Suffix=")"/>
+ <NumberingLevel NumType="4" Prefix=" " Suffix="."/>
+ <NumberingLevel NumType="4" Prefix="(" Suffix=")"/>
+ <NumberingLevel NumType="2" Prefix=" " Suffix="."/>
+ <NumberingLevel NumType="0" Prefix=" " Suffix=")"/>
+ <NumberingLevel NumType="1" Prefix=" " Suffix=")"/>
+ <NumberingLevel NumType="1" Prefix="(" Suffix=")"/>
+ <NumberingLevel NumType="3" Prefix=" " Suffix="."/>
+ </LC_NumberingLevel>
+ <LC_OutLineNumberingLevel ref="en_US"/>
+</Locale>
+<!--Version 1.0 -->
diff --git a/i18npool/source/localedata/localedata.cxx b/i18npool/source/localedata/localedata.cxx
index 920a63fe149a..34f4f6bbb520 100644
--- a/i18npool/source/localedata/localedata.cxx
+++ b/i18npool/source/localedata/localedata.cxx
@@ -169,6 +169,7 @@ static const struct {
{ "ast_ES", lcl_DATA_EURO },
{ "ltg_LV", lcl_DATA_EURO },
{ "hsb_DE", lcl_DATA_EURO },
+ { "rue_SK", lcl_DATA_EURO },
{ "ja_JP", lcl_DATA_OTHERS },
{ "ko_KR", lcl_DATA_OTHERS },
@@ -179,6 +180,7 @@ static const struct {
{ "zh_MO", lcl_DATA_OTHERS },
{ "ar_EG", lcl_DATA_OTHERS },
+ { "ar_DZ", lcl_DATA_OTHERS },
{ "ar_LB", lcl_DATA_OTHERS },
{ "ar_SA", lcl_DATA_OTHERS },
{ "ar_TN", lcl_DATA_OTHERS },
@@ -248,6 +250,7 @@ static const struct {
{ "ug_CN", lcl_DATA_OTHERS },
{ "om_ET", lcl_DATA_OTHERS },
{ "plt_MG", lcl_DATA_OTHERS },
+ { "mai_IN", lcl_DATA_OTHERS },
};
static const sal_Unicode under = sal_Unicode('_');
diff --git a/i18npool/source/localedata/saxparser.cxx b/i18npool/source/localedata/saxparser.cxx
index 083d2097a54a..5118a827b260 100644
--- a/i18npool/source/localedata/saxparser.cxx
+++ b/i18npool/source/localedata/saxparser.cxx
@@ -34,7 +34,6 @@
#include "sal/main.h"
-#include <com/sun/star/registry/XImplementationRegistration.hpp>
#include <com/sun/star/lang/XComponent.hpp>
#include <com/sun/star/xml/sax/SAXParseException.hpp>
@@ -125,13 +124,14 @@ Reference< XInputStream > createStreamFromFile(
if( f ) {
fseek( f , 0 , SEEK_END );
- int nLength = ftell( f );
+ size_t nLength = ftell( f );
fseek( f , 0 , SEEK_SET );
Sequence<sal_Int8> seqIn(nLength);
- fread( seqIn.getArray() , nLength , 1 , f );
-
- r = Reference< XInputStream > ( new OInputStream( seqIn ) );
+ if (fread( seqIn.getArray() , nLength , 1 , f ) == 1)
+ r = Reference< XInputStream > ( new OInputStream( seqIn ) );
+ else
+ fprintf(stderr, "failure reading %s\n", pcFile);
fclose( f );
}
return r;
@@ -338,7 +338,7 @@ SAL_IMPLEMENT_MAIN_WITH_ARGS(argc, argv)
{
xSMgr = createRegistryServiceFactory(
::rtl::OUString::createFromAscii(argv[4]),
- ::rtl::OUString::createFromAscii(argv[5]) );
+ ::rtl::OUString::createFromAscii(argv[5]), true );
}
catch ( Exception& )
{
@@ -346,38 +346,6 @@ SAL_IMPLEMENT_MAIN_WITH_ARGS(argc, argv)
exit(1);
}
- Reference < XImplementationRegistration > xReg;
- try
- {
- // Create registration service
- Reference < XInterface > x = xSMgr->createInstance(
- OUString::createFromAscii( "com.sun.star.registry.ImplementationRegistration" ) );
- xReg = Reference< XImplementationRegistration > ( x , UNO_QUERY );
- }
- catch( Exception & ) {
- printf( "Couldn't create ImplementationRegistration service\n" );
- exit(1);
- }
-
- OString sTestName;
- try
- {
- // Load dll for the tested component
- OUString aDllName =
- OUString::createFromAscii( "sax.uno" SAL_DLLEXTENSION );
- xReg->registerImplementation(
- OUString::createFromAscii( "com.sun.star.loader.SharedLibrary" ),
- aDllName,
- Reference< XSimpleRegistry > () );
- }
- catch( Exception &e ) {
- printf( "Couldn't raise sax.uno library!\n" );
- printf( "%s\n" , OUStringToOString( e.Message , RTL_TEXTENCODING_ASCII_US ).getStr() );
-
- exit(1);
- }
-
-
//--------------------------------
// parser demo
// read xml from a file and count elements
diff --git a/i18npool/source/paper/paper.cxx b/i18npool/source/paper/paper.cxx
index 21be12588e37..e94efa6e06c5 100644
--- a/i18npool/source/paper/paper.cxx
+++ b/i18npool/source/paper/paper.cxx
@@ -436,8 +436,8 @@ Paper PaperInfo::fromPSName(const rtl::OString &rName)
}
//http://wiki.services.openoffice.org/wiki/DefaultPaperSize
-//http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/localedata/locales/?cvsroot=glibc
//http://www.unicode.org/cldr/data/charts/supplemental/territory_language_information.html
+//http://sourceware.org/git/?p=glibc.git;a=tree;f=localedata/locales
//http://en.wikipedia.org/wiki/Paper_size
//http://msdn.microsoft.com/en-us/library/cc195164.aspx
PaperInfo PaperInfo::getDefaultPaperForLocale(
@@ -448,22 +448,57 @@ PaperInfo PaperInfo::getDefaultPaperForLocale(
if (
//United States, Letter
!rLocale.Country.compareToAscii("US") ||
- //Puerto Rico, http://sources.redhat.com/ml/libc-hacker/2001-07/msg00046.html
+ //Puerto Rico:
+ // http://unicode.org/cldr/trac/ticket/1710
+ // http://sources.redhat.com/ml/libc-hacker/2001-07/msg00046.html
!rLocale.Country.compareToAscii("PR") ||
- //Canada, http://sources.redhat.com/ml/libc-hacker/2001-07/msg00053.html
+ //Canada:
+ // http://sources.redhat.com/ml/libc-hacker/2001-07/msg00053.html
!rLocale.Country.compareToAscii("CA") ||
- //Venuzuela, https://www.redhat.com/archives/fedora-devel-list/2008-August/msg00019.html
+ //Venuzuela:
+ // http://unicode.org/cldr/trac/ticket/1710
+ // https://www.redhat.com/archives/fedora-devel-list/2008-August/msg00019.html
!rLocale.Country.compareToAscii("VE") ||
- //Chile, https://www.redhat.com/archives/fedora-devel-list/2008-August/msg00240.html
+ //Chile:
+ // http://unicode.org/cldr/trac/ticket/1710
+ // https://www.redhat.com/archives/fedora-devel-list/2008-August/msg00240.html
!rLocale.Country.compareToAscii("CL") ||
- //Mexico, http://qa.openoffice.org/issues/show_bug.cgi?id=49739
+ //Mexico:
+ // http://unicode.org/cldr/trac/ticket/1710
+ // http://qa.openoffice.org/issues/show_bug.cgi?id=49739
!rLocale.Country.compareToAscii("MX") ||
- //Colombia, http://qa.openoffice.org/issues/show_bug.cgi?id=69703
+ //Colombia:
+ // http://unicode.org/cldr/trac/ticket/1710
+ // http://qa.openoffice.org/issues/show_bug.cgi?id=69703
!rLocale.Country.compareToAscii("CO") ||
- //Philippines,
+ //Philippines:
+ // http://unicode.org/cldr/trac/ticket/1710
// http://ubuntuliving.blogspot.com/2008/07/default-paper-size-in-evince.html
// http://www.gov.ph/faqs/driverslicense.asp
- !rLocale.Country.compareToAscii("PH")
+ !rLocale.Country.compareToAscii("PH") ||
+ //Belize:
+ // http://unicode.org/cldr/trac/ticket/2585
+ // http://www.belize.gov.bz/ct.asp?xItem=1666&ctNode=486&mp=27
+ !rLocale.Country.compareToAscii("BZ") ||
+ //Costa Rica:
+ // http://unicode.org/cldr/trac/ticket/2585
+ // http://sources.redhat.com/bugzilla/show_bug.cgi?id=11258
+ !rLocale.Country.compareToAscii("CR") ||
+ //Guatemala:
+ // http://unicode.org/cldr/trac/ticket/2585
+ // http://sources.redhat.com/bugzilla/show_bug.cgi?id=10936
+ !rLocale.Country.compareToAscii("GT") ||
+ //Nicaragua:
+ // http://unicode.org/cldr/trac/ticket/2585
+ !rLocale.Country.compareToAscii("NI") ||
+ //Panama:
+ // http://unicode.org/cldr/trac/ticket/2585
+ // http://www.minsa.gob.pa/minsa/tl_files/documents/baner_informativo/INSTRUMENTO%20DE%20INVESTIGACION%20DE%20RAAV%202009.pdf
+ !rLocale.Country.compareToAscii("PA") ||
+ //El Salvador:
+ // http://unicode.org/cldr/trac/ticket/2585
+ // http://www.tse.gob.sv
+ !rLocale.Country.compareToAscii("SV")
)
{
eType = PAPER_LETTER;
diff --git a/i18npool/source/registerservices/registerservices.cxx b/i18npool/source/registerservices/registerservices.cxx
index 280e12dfe4f7..0671e5669956 100644
--- a/i18npool/source/registerservices/registerservices.cxx
+++ b/i18npool/source/registerservices/registerservices.cxx
@@ -580,29 +580,6 @@ void SAL_CALL component_getImplementationEnvironment( const sal_Char** ppEnvType
*ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
}
-sal_Bool SAL_CALL component_writeInfo( void* /*_pServiceManager*/, void* _pRegistryKey )
-{
- if (_pRegistryKey)
- {
- ::com::sun::star::registry::XRegistryKey * pRegistryKey =
- reinterpret_cast< ::com::sun::star::registry::XRegistryKey* >(
- _pRegistryKey );
- ::com::sun::star::uno::Reference<
- ::com::sun::star::registry::XRegistryKey > xNewKey;
-
- for( const InstancesArray* pArr = aInstances; pArr->pServiceNm; ++pArr )
- {
- xNewKey = pRegistryKey->createKey(
- ::rtl::OUString::createFromAscii( pArr->pImplementationNm ) );
- xNewKey = xNewKey->createKey(
- ::rtl::OUString::createFromAscii( "/UNO/SERVICES" ) );
- xNewKey->createKey(
- ::rtl::OUString::createFromAscii( pArr->pServiceNm ) );
- }
- }
- return sal_True;
-}
-
void* SAL_CALL component_getFactory( const sal_Char* sImplementationName, void* _pServiceManager, void* /*_pRegistryKey*/ )
{
void* pRet = NULL;
diff --git a/i18npool/source/search/i18nsearch.component b/i18npool/source/search/i18nsearch.component
new file mode 100644
index 000000000000..6288bcd7c840
--- /dev/null
+++ b/i18npool/source/search/i18nsearch.component
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.util.TextSearch_i18n">
+ <service name="com.sun.star.util.TextSearch"/>
+ </implementation>
+</component>
diff --git a/i18npool/source/search/makefile.mk b/i18npool/source/search/makefile.mk
index aed976edd896..372b32a216d1 100644
--- a/i18npool/source/search/makefile.mk
+++ b/i18npool/source/search/makefile.mk
@@ -76,3 +76,11 @@ DEF1NAME= $(SHL1TARGET)
.INCLUDE : target.mk
+
+ALLTAR : $(MISC)/i18nsearch.component
+
+$(MISC)/i18nsearch.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ i18nsearch.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt i18nsearch.component
diff --git a/i18npool/source/search/textsearch.cxx b/i18npool/source/search/textsearch.cxx
index dea4eca2a618..e71e0fc0cd71 100644
--- a/i18npool/source/search/textsearch.cxx
+++ b/i18npool/source/search/textsearch.cxx
@@ -987,25 +987,6 @@ void SAL_CALL component_getImplementationEnvironment(
*ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
}
-sal_Bool SAL_CALL component_writeInfo(
- void* /*_pServiceManager*/, void* _pRegistryKey )
-{
- if (_pRegistryKey)
- {
- ::com::sun::star::registry::XRegistryKey * pRegistryKey =
- reinterpret_cast< ::com::sun::star::registry::XRegistryKey* >(
- _pRegistryKey );
- ::com::sun::star::uno::Reference<
- ::com::sun::star::registry::XRegistryKey > xNewKey;
-
- xNewKey = pRegistryKey->createKey( getImplementationName_Static() );
- xNewKey = xNewKey->createKey(
- ::rtl::OUString::createFromAscii( "/UNO/SERVICES" ) );
- xNewKey->createKey( getServiceName_Static() );
- }
- return sal_True;
-}
-
void* SAL_CALL component_getFactory( const sal_Char* sImplementationName,
void* _pServiceManager, void* /*_pRegistryKey*/ )
{
diff --git a/i18npool/source/transliteration/transliterationImpl.cxx b/i18npool/source/transliteration/transliterationImpl.cxx
index dfadecfd5eb7..2109c310b233 100644
--- a/i18npool/source/transliteration/transliterationImpl.cxx
+++ b/i18npool/source/transliteration/transliterationImpl.cxx
@@ -295,7 +295,6 @@ OUString SAL_CALL
TransliterationImpl::transliterate( const OUString& inStr, sal_Int32 startPos, sal_Int32 nCount,
Sequence< sal_Int32 >& offset ) throw(RuntimeException)
{
-
if (numCascade == 0)
return inStr;
diff --git a/i18npool/source/transliteration/transliteration_body.cxx b/i18npool/source/transliteration/transliteration_body.cxx
index b58347826470..43222b7a41eb 100755
--- a/i18npool/source/transliteration/transliteration_body.cxx
+++ b/i18npool/source/transliteration/transliteration_body.cxx
@@ -35,6 +35,7 @@
#include <comphelper/processfactory.hxx>
#include <osl/diagnose.h>
+#include <string.h>
#include "characterclassificationImpl.hxx"
#include "breakiteratorImpl.hxx"
@@ -96,7 +97,7 @@ static sal_uInt8 lcl_getMappingTypeForToggleCase( sal_uInt8 nMappingType, sal_Un
nRes = MappingTypeLowerToUpper;
else
{
- OSL_ENSURE( nType & 0x01 /* upper case */, "uppercase character expected! 'Toggle case' failed?" );
+ // should also work properly for non-upper characters like white spacs, numbers, ...
nRes = MappingTypeUpperToLower;
}
}
@@ -330,185 +331,143 @@ Transliteration_titlecase::Transliteration_titlecase()
implementationName = "com.sun.star.i18n.Transliteration.Transliteration_titlecase";
}
-rtl::OUString SAL_CALL Transliteration_titlecase::transliterate(
- const OUString& inStr, sal_Int32 startPos, sal_Int32 nCount,
- Sequence< sal_Int32 >& /*offset*/ )
- throw(RuntimeException)
+#if 0
+struct LigatureData
{
- Reference< XMultiServiceFactory > xMSF = ::comphelper::getProcessServiceFactory();
- CharacterClassificationImpl aCharClassImpl( xMSF );
-
- // possible problem: the locale is not exactly specific for each word in the text...
- OUString aRes( aCharClassImpl.toTitle( inStr, startPos, nCount, aLocale ) );
- return aRes;
+ sal_uInt32 cChar;
+ sal_Char * pUtf8Text;
+};
+
+// available Unicode ligatures:
+// http://www.unicode.org/charts
+// http://www.unicode.org/charts/PDF/UFB00.pdf
+static LigatureData aLigatures[] =
+{
+ { 0x0FB00, "ff" },
+ { 0x0FB01, "fi" },
+ { 0x0FB02, "fl" },
+ { 0x0FB03, "ffi" },
+ { 0x0FB04, "ffl" },
+ { 0x0FB05, "ft" },
+ { 0x0FB06, "st" },
+
+ { 0x0FB13, "\xD5\xB4\xD5\xB6" }, // Armenian small men now
+ { 0x0FB14, "\xD5\xB4\xD5\xA5" }, // Armenian small men ech
+ { 0x0FB15, "\xD5\xB4\xD5\xAB" }, // Armenian small men ini
+ { 0x0FB16, "\xD5\xBE\xD5\xB6" }, // Armenian small vew now
+ { 0x0FB17, "\xD5\xB4\xD5\xAD" }, // Armenian small men xeh
+ { 0x00000, "" }
+};
+
+static inline bool lcl_IsLigature( sal_uInt32 cChar )
+{
+ return (0x0FB00 <= cChar && cChar <= 0x0FB06) || (0x0FB13 <= cChar && cChar <= 0x0FB17);
}
-Transliteration_sentencecase::Transliteration_sentencecase()
+static rtl::OUString lcl_ResolveLigature( sal_uInt32 cChar )
{
- nMappingType = MappingTypeToTitle; // though only to be applied to the first word...
- transliterationName = "sentence(generic)";
- implementationName = "com.sun.star.i18n.Transliteration.Transliteration_sentencecase";
+ rtl::OUString aRes;
+ if (lcl_IsLigature( cChar ))
+ {
+ LigatureData *pFound = NULL;
+ LigatureData *pData = aLigatures;
+ while (!pFound && pData->cChar != 0)
+ {
+ if (pData->cChar == cChar)
+ pFound = pData;
+ ++pData;
+ }
+ if (pFound)
+ aRes = rtl::OUString( pFound->pUtf8Text, strlen( pFound->pUtf8Text ), RTL_TEXTENCODING_UTF8 );
+ }
+ else
+ aRes = rtl::OUString( &cChar, 1 );
+ return aRes;
}
+#endif // if 0
-rtl::OUString SAL_CALL Transliteration_sentencecase::transliterate(
+static rtl::OUString transliterate_titlecase_Impl(
const OUString& inStr, sal_Int32 startPos, sal_Int32 nCount,
+ const Locale &rLocale,
Sequence< sal_Int32 >& offset )
throw(RuntimeException)
{
- // inspired from Transliteration_body::transliterate
- sal_Int32 nOffCount = 0, i;
- bool bPoint = true;
- if (useOffset)
- {
- for( i = 0; i < nCount; ++i ) {
- sal_Unicode c = inStr.getStr()[ i + startPos ];
- if( sal_Unicode('.') == c || sal_Unicode('!') == c || sal_Unicode('?') == c ) {
- bPoint = true;
- nOffCount++;
- }
- else if( unicode::isAlpha( c ) || unicode::isDigit( c ) )
- {
- const Mapping* map = 0;
- if( bPoint && unicode::isLower( c ))
- {
- map = &casefolding::getValue(&c, 0, 1, aLocale, MappingTypeLowerToUpper);
- bPoint = false;
- }
- else if (!bPoint && unicode::isUpper( c ))
- {
- map = &casefolding::getValue(&c, 0, 1, aLocale, MappingTypeUpperToLower);
- }
-
- if(map == 0)
- {
- nOffCount++;
- }
- else
- {
- nOffCount += map->nmap;
- }
- }
- else
- {
- nOffCount++;
- }
- }
- }
-
- bPoint = true;
- rtl::OUStringBuffer result;
+ const OUString aText( inStr.copy( startPos, nCount ) );
- if (useOffset)
+ OUString aRes;
+ if (aText.getLength() > 0)
{
- result.ensureCapacity(nOffCount);
- if ( nOffCount != offset.getLength() )
- offset.realloc( nOffCount );
- }
-
-
- sal_Int32 j = 0;
- sal_Int32 * pArr = offset.getArray();
- for( i = 0; i < nCount; ++i ) {
- sal_Unicode c = inStr.getStr()[ i + startPos ];
- if( sal_Unicode('.') == c || sal_Unicode('!') == c || sal_Unicode('?') == c ) {
- bPoint = true;
- result.append(c);
- pArr[j++] = i + startPos;
- }
- else if( unicode::isAlpha( c ) || unicode::isDigit( c ) )
- {
- const Mapping* map = 0;
- if( bPoint && unicode::isLower( c ))
- {
- map = &casefolding::getValue(&c, 0, 1, aLocale, MappingTypeLowerToUpper);
- }
- else if (!bPoint && unicode::isUpper( c ))
- {
- map = &casefolding::getValue(&c, 0, 1, aLocale, MappingTypeUpperToLower);
- }
-
- if(map == 0)
- {
- result.append( c );
- pArr[j++] = i + startPos;
- }
- else
- {
- for (sal_Int32 k = 0; k < map->nmap; k++)
- {
- result.append( map->map[k] );
- pArr[j++] = i + startPos;
- }
- }
- bPoint = false;
- }
- else
+ Reference< XMultiServiceFactory > xMSF = ::comphelper::getProcessServiceFactory();
+ CharacterClassificationImpl aCharClassImpl( xMSF );
+
+ // because aCharClassImpl.toTitle does not handle ligatures or but will raise
+ // an exception we need to handle the first chara manually...
+
+ // we don't want to change surrogates by accident, thuse we use proper code point iteration
+ sal_Int32 nPos = 0;
+ sal_uInt32 cFirstChar = aText.iterateCodePoints( &nPos );
+ OUString aResolvedLigature( &cFirstChar, 1 ); //lcl_ResolveLigature( cFirstChar ) );
+ // toUpper can be used to properly resolve ligatures and characters like
+ aResolvedLigature = aCharClassImpl.toUpper( aResolvedLigature, 0, aResolvedLigature.getLength(), rLocale );
+ // since toTitle will leave all-uppercase text unchanged we first need to
+ // use toLower to bring possible 2nd and following charas in lowercase
+ aResolvedLigature = aCharClassImpl.toLower( aResolvedLigature, 0, aResolvedLigature.getLength(), rLocale );
+ sal_Int32 nResolvedLen = aResolvedLigature.getLength();
+
+ // now we can properly use toTitle to get the expected result for the resolved string.
+ // The rest of the text should just become lowercase.
+ aRes = aCharClassImpl.toTitle( aResolvedLigature, 0, nResolvedLen, rLocale );
+ aRes += aCharClassImpl.toLower( aText, 1, aText.getLength() - 1, rLocale );
+ offset.realloc( aRes.getLength() );
+
+ sal_Int32 *pOffset = offset.getArray();
+ sal_Int32 nLen = offset.getLength();
+ for (sal_Int32 i = 0; i < nLen; ++i)
{
- result.append( c );
- pArr[j++] = i + startPos;
+ sal_Int32 nIdx = 0;
+ if (i >= nResolvedLen)
+ nIdx = i - nResolvedLen + 1;
+ pOffset[i] = nIdx;
}
}
- return result.makeStringAndClear();
+#if OSL_DEBUG_LEVEL > 1
+ const sal_Int32 *pCOffset = offset.getConstArray();
+ (void) pCOffset;
+#endif
+
+ return aRes;
}
-#if 0
-// TL: alternative implemntation try. But breakiterator has its problem too since
-// beginOfSentence does not work as expected with '.'. See comment below.
-// For the time being I will leave this code here as a from-scratch sample if the
-// breakiterator works better at some point...
-rtl::OUString SAL_CALL Transliteration_sentencecase::transliterate(
- const OUString& inStr, sal_Int32 nStartPos, sal_Int32 nCount,
- Sequence< sal_Int32 >& /*offset*/ )
+
+// this function expects to be called on a word-by-word basis,
+// namely that startPos points to the first char of the word
+rtl::OUString SAL_CALL Transliteration_titlecase::transliterate(
+ const OUString& inStr, sal_Int32 startPos, sal_Int32 nCount,
+ Sequence< sal_Int32 >& offset )
throw(RuntimeException)
{
- OUString aRes( inStr.copy( nStartPos, nCount ) );
+ return transliterate_titlecase_Impl( inStr, startPos, nCount, aLocale, offset );
+}
- if (nStartPos >= 0 && nStartPos < inStr.getLength() && nCount > 0)
- {
- Reference< XMultiServiceFactory > xMSF = ::comphelper::getProcessServiceFactory();
- BreakIteratorImpl brk( xMSF );
- sal_Int32 nSentenceStart = -1, nOldSentenceStart = -1;
- sal_Int32 nPos = nStartPos + nCount - 1;
- while (nPos >= nStartPos && nPos != -1)
- {
- // possible problem: the locale is not exactly specific for each sentence in the text,
- // but it is the only one we have...
- nOldSentenceStart = nSentenceStart;
- nSentenceStart = brk.beginOfSentence( inStr, nPos, aLocale );
-
- // since the breakiterator completely ignores '.' characvters as end-of-sentence when
- // the next word is lower case we need to take care of that ourself. The drawback:
- // la mid-sentence abbreviation like e.g. will now be identified as end-of-sentence. :-(
- // Well, at least the other product does it in the same way...
- sal_Int32 nFullStopPos = inStr.lastIndexOf( (sal_Unicode)'.', nPos );
- nPos = nSentenceStart;
- if (nFullStopPos > 0 && nFullStopPos > nSentenceStart)
- {
- Boundary aBd2 = brk.nextWord( inStr, nFullStopPos, aLocale, WordType::DICTIONARY_WORD );
- nSentenceStart = aBd2.startPos;
- nPos = nFullStopPos;
- }
+Transliteration_sentencecase::Transliteration_sentencecase()
+{
+ nMappingType = MappingTypeToTitle; // though only to be applied to the first word...
+ transliterationName = "sentence(generic)";
+ implementationName = "com.sun.star.i18n.Transliteration.Transliteration_sentencecase";
+}
- if (nSentenceStart < nOldSentenceStart || nOldSentenceStart == -1)
- {
- // the sentence start might be a quotation mark or some kind of bracket, thus
- // we need the first dictionary word starting or following this position
- // Boundary aBd1 = brk.nextWord( inStr, nSentenceStart, aLocale, WordType::DICTIONARY_WORD );
- Boundary aBd2 = brk.getWordBoundary( inStr, nSentenceStart, aLocale, WordType::DICTIONARY_WORD, true );
- // OUString aWord1( inStr.copy( aBd1.startPos, aBd1.endPos - aBd1.startPos + 1 ) );
- OUString aWord2( inStr.copy( aBd2.startPos, aBd2.endPos - aBd2.startPos + 1 ) );
- }
- else
- break; // prevent endless loop
- // continue with previous sentence
- if (nPos != -1)
- --nPos;
- }
- }
- return aRes;
+// this function expects to be called on a sentence-by-sentence basis,
+// namely that startPos points to the first word (NOT first char!) in the sentence
+rtl::OUString SAL_CALL Transliteration_sentencecase::transliterate(
+ const OUString& inStr, sal_Int32 startPos, sal_Int32 nCount,
+ Sequence< sal_Int32 >& offset )
+ throw(RuntimeException)
+{
+ return transliterate_titlecase_Impl( inStr, startPos, nCount, aLocale, offset );
}
-#endif
+
} } } }
+
diff --git a/i18npool/util/i18npool.component b/i18npool/util/i18npool.component
new file mode 100644
index 000000000000..d11606efb6d4
--- /dev/null
+++ b/i18npool/util/i18npool.component
@@ -0,0 +1,484 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--**********************************************************************
+*
+* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+*
+* Copyright 2000, 2010 Oracle and/or its affiliates.
+*
+* OpenOffice.org - a multi-platform office productivity suite
+*
+* This file is part of OpenOffice.org.
+*
+* OpenOffice.org is free software: you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License version 3
+* only, as published by the Free Software Foundation.
+*
+* OpenOffice.org is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU Lesser General Public License version 3 for more details
+* (a copy is included in the LICENSE file that accompanied this code).
+*
+* You should have received a copy of the GNU Lesser General Public License
+* version 3 along with OpenOffice.org. If not, see
+* <http://www.openoffice.org/license.html>
+* for a copy of the LGPLv3 License.
+*
+**********************************************************************-->
+
+<component loader="com.sun.star.loader.SharedLibrary"
+ xmlns="http://openoffice.org/2010/uno-components">
+ <implementation name="com.sun.star.i18n.BreakIterator">
+ <service name="com.sun.star.i18n.BreakIterator"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.BreakIterator_Unicode">
+ <service name="com.sun.star.i18n.BreakIterator_Unicode"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.BreakIterator_ja">
+ <service name="com.sun.star.i18n.BreakIterator_ja"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.BreakIterator_ko">
+ <service name="com.sun.star.i18n.BreakIterator_ko"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.BreakIterator_th">
+ <service name="com.sun.star.i18n.BreakIterator_th"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.BreakIterator_zh">
+ <service name="com.sun.star.i18n.BreakIterator_zh"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.BreakIterator_zh_TW">
+ <service name="com.sun.star.i18n.BreakIterator_zh_TW"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.CalendarImpl">
+ <service name="com.sun.star.i18n.LocaleCalendar"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Calendar_ROC">
+ <service name="com.sun.star.i18n.Calendar_ROC"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Calendar_buddhist">
+ <service name="com.sun.star.i18n.Calendar_buddhist"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Calendar_gengou">
+ <service name="com.sun.star.i18n.Calendar_gengou"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Calendar_gregorian">
+ <service name="com.sun.star.i18n.Calendar_gregorian"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Calendar_hanja">
+ <service name="com.sun.star.i18n.Calendar_hanja"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Calendar_hanja_yoil">
+ <service name="com.sun.star.i18n.Calendar_hanja_yoil"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Calendar_hijri">
+ <service name="com.sun.star.i18n.Calendar_hijri"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Calendar_jewish">
+ <service name="com.sun.star.i18n.Calendar_jewish"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.ChapterCollator">
+ <service name="com.sun.star.i18n.ChapterCollator"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.CharacterClassification">
+ <service name="com.sun.star.i18n.CharacterClassification"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.CharacterClassification_Unicode">
+ <service name="com.sun.star.i18n.CharacterClassification_Unicode"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Collator">
+ <service name="com.sun.star.i18n.Collator"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Collator_Unicode">
+ <service name="com.sun.star.i18n.Collator_Unicode"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.IndexEntrySupplier">
+ <service name="com.sun.star.i18n.IndexEntrySupplier"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.IndexEntrySupplier_Unicode">
+ <service name="com.sun.star.i18n.IndexEntrySupplier_Unicode"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.IndexEntrySupplier_asian">
+ <service name="com.sun.star.i18n.IndexEntrySupplier_asian"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first)">
+ <service name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first)"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by consonant)">
+ <service name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by consonant)"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by syllable)">
+ <service name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric first) (grouped by syllable)"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last)">
+ <service name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last)"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by consonant)">
+ <service name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by consonant)"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by syllable)">
+ <service name="com.sun.star.i18n.IndexEntrySupplier_ja_phonetic (alphanumeric last) (grouped by syllable)"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.InputSequenceChecker">
+ <service name="com.sun.star.i18n.InputSequenceChecker"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.InputSequenceChecker_hi">
+ <service name="com.sun.star.i18n.InputSequenceChecker_hi"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.InputSequenceChecker_th">
+ <service name="com.sun.star.i18n.InputSequenceChecker_th"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.LocaleData">
+ <service name="com.sun.star.i18n.LocaleData"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.NativeNumberSupplier">
+ <service name="com.sun.star.i18n.NativeNumberSupplier"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.NumberFormatCodeMapper">
+ <service name="com.sun.star.i18n.NumberFormatMapper"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.OrdinalSuffix">
+ <service name="com.sun.star.i18n.OrdinalSuffix"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.ScriptTypeDetector">
+ <service name="com.sun.star.i18n.ScriptTypeDetector"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.TextConversion">
+ <service name="com.sun.star.i18n.TextConversion"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.TextConversion_ko">
+ <service name="com.sun.star.i18n.TextConversion_ko"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.TextConversion_zh">
+ <service name="com.sun.star.i18n.TextConversion_zh"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration">
+ <service name="com.sun.star.i18n.Transliteration"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumEastIndic_ar">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumFullwidth">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumHangul_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumIndic_ar">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumIndic_hi">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumKanjiShort_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumKanjiTraditional_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumLower_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumLower_zh_CN">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumLower_zh_TW">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumUpper_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumUpper_zh_CN">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNumUpper_zh_TW">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.CharToNum_th">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.FULLWIDTHKATAKANA_HALFWIDTHKATAKANA">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.FULLWIDTH_HALFWIDTH">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.FULLWIDTH_HALFWIDTH_LIKE_ASC">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.HALFWIDTHKATAKANA_FULLWIDTHKATAKANA">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.HALFWIDTH_FULLWIDTH">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.HALFWIDTH_FULLWIDTH_LIKE_JIS">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.HIRAGANA_KATAKANA">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.IGNORE_CASE">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.IGNORE_KANA">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.IGNORE_WIDTH">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.KATAKANA_HIRAGANA">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.LOWERCASE_UPPERCASE">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharEastIndic_ar">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharFullwidth">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharHalfwidth">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharHangul_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharIndic_ar">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharIndic_hi">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharKanjiShort_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharKanjiTraditional_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharLower_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharLower_zh_CN">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharLower_zh_TW">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharUpper_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharUpper_zh_CN">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToCharUpper_zh_TW">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToChar_th">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextAIUFullWidth_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextAIUHalfWidth_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextCircledNumber">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextDate_zh">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextDiZi_zh">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextFormalHangul_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextFormalLower_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextFormalUpper_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextFullwidth_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextFullwidth_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextFullwidth_zh_CN">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextFullwidth_zh_TW">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextHangulCircledJamo_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextHangulCircledSyllable_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextHangulJamo_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextHangulSyllable_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextIROHAFullWidth_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextIROHAHalfWidth_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextInformalHangul_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextInformalLower_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextInformalUpper_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextKanjiLongModern_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextKanjiLongTraditional_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextKanjiShortModern_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextKanjiShortTraditional_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextLower_zh_CN">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextLower_zh_TW">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextTianGan_zh">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextUpper_zh_CN">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.NumToTextUpper_zh_TW">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.SENTENCE_CASE">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TITLE_CASE">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TOGGLE_CASE">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToChuyin_zh_TW">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToNumFormalHangul_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToNumFormalLower_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToNumFormalUpper_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToNumInformalHangul_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToNumInformalLower_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToNumInformalUpper_ko">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToNumKanjiLongModern_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToNumKanjiLongTraditional_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToNumLower_zh_CN">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToNumLower_zh_TW">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToNumUpper_zh_CN">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToNumUpper_zh_TW">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.TextToPinyin_zh_CN">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.UPPERCASE_LOWERCASE">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreBaFa_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreHyuByu_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreIandEfollowedByYa_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreIterationMark_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreKana">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreKiKuFollowedBySa_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreMiddleDot_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreMinusSign_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreProlongedSoundMark_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreSeZe_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreSeparator_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreSize_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreSpace_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreTiJi_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreTraditionalKana_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreTraditionalKanji_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.ignoreZiZu_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.largeToSmall_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.i18n.Transliteration.smallToLarge_ja_JP">
+ <service name="com.sun.star.i18n.Transliteration.l10n"/>
+ </implementation>
+ <implementation name="com.sun.star.text.DefaultNumberingProvider">
+ <service name="com.sun.star.text.DefaultNumberingProvider"/>
+ </implementation>
+</component>
diff --git a/i18npool/util/makefile.mk b/i18npool/util/makefile.mk
index 57f802be62fe..8c9f1a83b2c0 100644
--- a/i18npool/util/makefile.mk
+++ b/i18npool/util/makefile.mk
@@ -79,3 +79,11 @@ SHL1STDLIBS= \
# --- Targets ------------------------------------------------------------
.INCLUDE : target.mk
+
+ALLTAR : $(MISC)/i18npool.component
+
+$(MISC)/i18npool.component .ERRREMOVE : $(SOLARENV)/bin/createcomponent.xslt \
+ i18npool.component
+ $(XSLTPROC) --nonet --stringparam uri \
+ '$(COMPONENTPREFIX_BASIS_NATIVE)$(SHL1TARGETN:f)' -o $@ \
+ $(SOLARENV)/bin/createcomponent.xslt i18npool.component