Details
-
Technical task
-
Resolution: Unresolved
-
P2: Important
-
None
Description
CLDR has a significantly richer language for date-time formatting than ours.
(It would appear the macOS native date-time formatting has similar, possibly based on CLDR. See qlocale_mac.mm for details.)
Rather than lossily converting CLDR's date-time formats to ours when generating QLocale's data, preserve CLDR's date-time formats faithfully and support them correctly.
Encapsulate support for these formats in a QDateTimeFormat class that can be used both for serialization and parsing; it can be the home of a new and better parser for date-times (that matches up the text to the format before it starts trying to determine the values of the fields within it; which should let it read fields in order of decreasing significance instead of from left to right, which should significantly reduce the complexity compared to QDateTimeParser).
We can (possibly lossily, but probably not) convert our legacy date-time formats to CLDR's to eventually replace our date-time parsing and formatting code. The QDateTimeEdit class shall also need a major overhaul in the process.
In particular, note that CLDR provides <dateTimeFormat> elements that say how to combine the date and time formats, which we just naively stick together with a plain space.
Attachments
Issue Links
- is duplicated by
-
QTBUG-111055 Consider adding a QDateTimeFormatter class
- Closed
- is required for
-
QTBUG-70516 Extend Qt's support for CLDR date/time formatting
- Open
- relates to
-
QTBUG-122228 Gaps in date-time format string support
- Reported
-
QTBUG-110669 Q/Date/Time: align unquoting format strings for both from/toString()
- Open
-
QTBUG-77948 Rewrite QDateTimeParser
- Open
-
QTBUG-112909 Support all CLDR's various ways of naming time-zones
- Open
-
QTBUG-105985 Add format string option for week number
- Reported
-
QTBUG-123872 time wrongly displayed in zh_TW locale
- Closed