map he->iw and id->in in nsLocaleService
Categories
(Firefox for Android Graveyard :: Locale switching and selection, defect, P2)
Tracking
(blocking-fennec1.0 -, fennec-)
People
(Reporter: Pike, Unassigned)
References
()
Details
As you can see on http://colincooper.net/?p=238, android is using two odd locale codes in their scheme, 'iw' instead of 'he', and 'in' instead of 'id'. We need to map our locale codes with special case for this, http://hg.mozilla.org/projects/birch/file/f069ffc41471/embedding/android/Makefile.in#l173 should be the right spot. Tested that that works with my AllLocales dummy app from https://github.com/Pike/android-l10n.
Updated•13 years ago
|
Comment 1•13 years ago
|
||
assigned to l10n@mozilla.com. Not really sure how to fix this.
Reporter | ||
Comment 2•13 years ago
|
||
At least half of this is in bug 702302 now. Not sure if we need some tweaks to matchOS logic, notably: if you set the OS language to hebrew or indonesian, and that sends the java locale codes to nsPosixLocale.cpp, map them to the gecko versions, probably in that file.
Reporter | ||
Comment 3•13 years ago
|
||
My tests show that hebrew isn't picked up in the multi-locale build so far. Need to investigate further.
Comment 4•13 years ago
|
||
Axel, since we are working on 'he' folder for localization and not 'iw', should it make any change in our current workflow?
Reporter | ||
Comment 5•13 years ago
|
||
LANG: iw_IL shows my debugging in http://mxr.mozilla.org/mozilla-central/source/intl/locale/src/nsLocaleService.cpp#167. Simon, any recommendation on where we should make iw -> he again? Same for in->id. In nsLocaleService, or in nsPosixLocale? (And no, the mapping is done on build time now)
Comment 6•13 years ago
|
||
I think in nsLocaleService. What about other deprecated language codes? From the IANA registry, there are also ji->yi jw->jv mo->ro and a bunch of deprecated three-letter codes. <rant> It's so annoying that we have to deal with this: in and iw were deprecated in *1989*, probably before the majority of users of Android devices were even born. </rant>
Reporter | ||
Comment 7•13 years ago
|
||
http://colincooper.net/?p=238 claims that only Yiddish is affected, too. Blames java for that, and whatever I find on the web isn't really authoritative but also only mentions the three of he, id, ji.
Updated•13 years ago
|
Updated•13 years ago
|
Updated•13 years ago
|
Updated•13 years ago
|
Updated•12 years ago
|
Comment 9•12 years ago
|
||
Pike, of this needs to track a given release, please renom and say which one
Reporter | ||
Comment 10•11 years ago
|
||
Not gonna work on this any time soon, unassigning.
Updated•11 years ago
|
Updated•11 years ago
|
Updated•10 years ago
|
Comment 11•10 years ago
|
||
Comment 6 seems to be the remaining work item here.
Comment 12•6 years ago
|
||
can we close it now? We don't have nsILocaleService, Android migrated to BCP47 and it seems like we haven't hear about any issues around it in a long time.
Reporter | ||
Comment 13•6 years ago
|
||
I'm resolving this, there's a few caveats though:
Android is far from BCP47. There's some junk they do with script tags in resources, but that's not BCP47 either. They just namedrop that. IIRC, the non-standard language codes are actually java related (and no idea if kotlin exposes that).
For Fennec, we've got work-arounds in the build and in the gecko-java wrappers. For geckoview, I honestly don't know. I didn't find anything in mobile/android/geckoview, but there's some in telemetry in a-c. I just don't know where to look. We'll need to test and find bugs in Fenix once we start localizing that.
Comment 14•6 years ago
|
||
That sounds reasonable! Let's handle that in Intl::Core for LocaleService once we start investigating. I'd also prefer to keep the platform specific quirks per-platform, so I hope that some equivalent of gecko-java wrappers will handle those outliers.
Updated•4 years ago
|
Description
•