qt5base-lts/util/locale_database
Edward Welbourne a9e4bf7eef Implement binary search in QLocale's likely sub-tag lookup
Follow through on a comment from 2012: sort the likely subtag array
(in the CLDR update script) and use bsearch to find entries in it.

This simplifies QLocaleXmlReader.likelyMap() slightly, moving the
detection of last entry to LocaleDataWriter.likelySubtags(), but
requires collecting all likely sub-tag mapping pairs (rather than just
passing them through from read to write via generators) in order to
sort them.

Change-Id: Ieb6875ccde1ddbd475ae68c0766a666ec32b7005
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-11-08 13:01:33 +01:00
..
testlocales Another round of replacing 0 with nullptr 2020-10-07 23:02:47 +02:00
cldr2qlocalexml.py Remove unused imports 2020-07-10 02:36:54 +02:00
cldr2qtimezone.py Reorder locale enums alphabetically 2020-11-08 13:01:18 +01:00
cldr.py Check our enumdata.py tables are consistent with CLDR 2020-11-08 03:14:00 +01:00
dateconverter.py Rename util/locale_database/ to include the e that was missing 2019-05-20 20:42:10 +02:00
enumdata.py Reorder locale enums alphabetically 2020-11-08 13:01:18 +01:00
formattags.txt Rename util/locale_database/ to include the e that was missing 2019-05-20 20:42:10 +02:00
ldml.py Fix handling of Suzhou numbering system 2020-07-17 12:19:01 +02:00
localetools.py Add tools to localetools to facilitate source file recreation 2020-04-02 19:42:45 +01:00
qlocalexml2cpp.py Implement binary search in QLocale's likely sub-tag lookup 2020-11-08 13:01:33 +01:00
qlocalexml.py Implement binary search in QLocale's likely sub-tag lookup 2020-11-08 13:01:33 +01: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.