-
Notifications
You must be signed in to change notification settings - Fork 4
Locale
In CLDR, I found some locale with digits such as en-150, es-418. and it looks like it covers a wider area. Such as 001 stands for World. and 150 stands for Europe. I want to know the reason why CLDR maintains those locales. and iLib also has those directories because it based on the CLDR. https://en.wikipedia.org/wiki/UN_M.49
Those are greater regions wich iLib doesn't support yet. For some applications, they may want to be non-specific as to the region and use a setting for all of Europe. Also, the numbered region can be used as the parent of more specific areas. For example, France inherits from Europe, which inherits from World, which inherits from the root. (For the most part world=root though.) The reason you see those things in iLib is that the conversion tools are not excluding them like they should. Mostly they should be ignored/removed
In iLib test case, Norwegian Local is mixed up with
nb-NO
,nn-NO
for Norwegian Locale. I want to clarify those locales.
Unittest with nb-NO in iLib : address, collation, datefmt, datefmtrange, name, and number.
Unittest with no-NO in iLib : collation, datefmt
nb (Norwegian Bokmal)
andnn(Norwegian Nynorsk)
are the actual ISO Language Codes we should be using. Now the two flavors of Norwegian are close enough together that I would call them dialects of each other (like North and South Korean). but for some reason, someone decided they are far enough apart to give them separate ISO tags. To specify Norwegian in general, they created theno
macro-language tag. Then can be used when the exact dialect doesn't matter too much. The collation and date formatting are two cases where the dialect doesn't matter too much. Both flavors of Norwegian are sorted the exact same way, and the date formats are the same between them as well (or they should be) For consistency, we can change all the tests in iLib usenb-No
, even for collation and dateformats, so that it is clear.
What is `macro-language'?
It's defined to ISO 639 standard. It is for languages that are strong dialects of each other and maybe are considered different languages, maybe not. Related feature PR: https://github.com/iLib-js/iLib/pull/77