qt5base-lts/util/locale_database
Mate Barany 3dcd6b7ec9 Pack languageCodeList tighter
Pack some of the arrays that contain locale data more tightly. The
AlphaCode struct is a char[4] but always holds only [a-z]{,3} which
could be fit into 16 bits, halving the size of an AlphaCode struct.

With the new constructor the initialization of the AlphaCode struct
also changes - modify qlocalexml2cpp.py to reflect this change and
regenerate the languageCodeList.

Fixes: QTBUG-105050
Change-Id: I2b1e93ab7cc3f2d667bf67b45769b74a15211931
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2023-03-15 19:48:30 +01: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 Fix trivial typo in cldr.py doc-string 2022-09-14 17:46:39 +02:00
dateconverter.py Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
enumdata.py Update CLDR to v42 2023-02-07 19:04:11 +01:00
formattags.txt
iso639_3.py Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
ldml.py Record a recent discovery: Suzhou isn't hanidec 2023-02-28 20:14:18 +01: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 Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qlocalexml.rnc Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
README

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.