| Unicode is used to generate the unicode data in src/corelib/text/. |
| |
| To update: |
| * Find the data (UAX #44, UCD; not the XML version) at |
| ftp://www.unicode.org/Public/zipped/$Version/ |
| * Unpack the zip file; for each file in data/, replace with the new |
| version; find the *BreakProperty.txt in auxiliary/. (These last are |
| only in the zip, not in the web-space's unpacked versions.) |
| * If needed, add an entry to enum QChar::UnicodeVersion for the new |
| Unicode version |
| * In that case, also update main.cpp's initAgeMap and DATA_VERSION_S* |
| to match |
| * Build this project. Its binary, unicode, ignores command-line |
| options and assumes it is being run from this directory. When run, |
| it produces lots of output. Hopefully that doesn't matter. |
| * Assertions may trigger: if so, study code and understand what's more |
| complicated about this update; talk to folk named in the git logs, |
| maybe push a WIP to gerrit to solicit advice. Some bit-field may |
| need to be expanded, for example. In some cases QChar may need |
| additions to some of its enums. |
| * Build with the modified code, fix any compilation issues. |
| * That may have updated qtbase/src/corelib/text/qunicodetables.cpp; |
| if so the update matters; be sure to commit the changes to data/ at |
| the same time and update text/qt_attribution.json to match; use the |
| UCD Revision number, rather than the Unicode standard number, as the |
| Version, for all that qunicodetables.cpp uses the latter. |
| |
| The script writingSystems.sh generates a list of writing systems, |
| ostensibly as a the basis for updating QFontDatabase::WritingSystem |
| enum; however, the Release 20 output of it contains many more writing |
| systems than are present in that enum, suggesting it has not been run |
| in a very long time. Further research needed. |