qt5base-lts/util/locale_database
Edward Welbourne bf650edb2e Cope with CLDR data conflict decimal == group
The digit-grouping and fractional-part separators need to be distinct
for parsing to be able to distinguish between two thousand and one vs
two and one thousandth. Thakfully ldml.py asserted this, so caught the
glitch in CLDR v43's data where mn_Mong_MN over-rode mn's decimal, but
not group, and thereby clashed with group. Fortunately the over-ride
is marked as draft="contributed" so we can back out of the collision
and limit the selection to draft="approved" values (but only when
there *is* such a conflict, as plenty of locales have (compatible)
draft data), thereby ignoring the conflicting contribution.

Brought to the attention of cldr-users at:
https://groups.google.com/a/unicode.org/g/cldr-users/c/6kW9kC6fz3g
hopefully that'll lead to a saner resolution at v44.

Task-number: QTBUG-111550
Change-Id: I1332486e60481cb4494446c0c87d89d74bd317d4
Reviewed-by: Ievgenii Meshcheriakov <ievgenii.meshcheriakov@qt.io>
(cherry picked from commit 8a762c6f0f)
2023-08-04 09:45:28 +02:00
..
testlocales Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
cldr2qlocalexml.py Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
cldr2qtimezone.py LocaleDB: Make passing qtbase root dir on command-lines optional 2022-11-01 19:14:14 +02:00
cldr.py Ignore parentLocales nodes with component="..." attributes 2023-08-04 09:45:21 +02:00
dateconverter.py Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
enumdata.py Correct enumdata.py's new-at-v42 entries to match generated data 2023-08-04 09:45:09 +02:00
formattags.txt Rename util/locale_database/ to include the e that was missing 2019-05-20 20:42:10 +02:00
iso639_3.py Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
ldml.py Cope with CLDR data conflict decimal == group 2023-08-04 09:45:28 +02:00
localetools.py LocaleDB: Make passing qtbase root dir on command-lines optional 2022-11-01 19:14:14 +02:00
qlocalexml2cpp.py Pack languageCodeList tighter 2023-03-15 19:48:30 +01:00
qlocalexml.py Fix typos in QLocaleXmlWriter 2023-08-04 09:45:15 +02:00
qlocalexml.rnc Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
README Update CLDR to v37, adding Nigerian Pidgin as a new language 2020-10-26 15:28:59 +02:00

locale_database is used to generate qlocale data from CLDR.

CLDR is the Common Locale Data Repository, a database for localized
data (like date formats, country names etc).  It is provided by the
Unicode consortium.

See cldr2qlocalexml.py for how to run it and qlocalexml2cpp.py to
update the locale data tables (principally text/qlocale_data_p.h and
time/q*calendar_data_p.h under src/corelib/). See enumdata.py for when
and how to update the data it provides. You shall definitely need to
pass --no-verify or -n to git commit for these changes.

See cldr2qtimezone.py on how to update tables of Windows-specific
names for zones and UTC-offset zone names.