Goals
- Grant user control over language selection within Fennec.
- [Accomplished in Fx32] Language selection currently controled by Android system preferences, whose availability are determined by OEMs and carriers.
- Accept-language header for customizing default language selection for delivery of web content.
- Locale breadth: ensure we can support any potential distribution deals without locales being any kind of hurdle or barrier
- Notes from what the competition supports:
- Opera Mobile supports 40 languages
- Chrome Mobile supports 31 (as of Apr 2012) and seemingly 38 (trying to find an official source of truth)
- Google Play store supports 45 localizations
- Google's default Android localization is into 68 languages (added support for Basque, Bengali, Burmese, Chinese (Hong Kong), Galician, Icelandic, Kannada, Kyrgyz, Macedonian, Malayalam, Marathi, Nepali, Sinhala, Tamil and Telugu in 5.0 Lollipop).
- OEMs add languages to Android's 52 delivered languages (e.g., Samsung devices have up to 83).
- Close the competitive gap between us, Chrome, and Opera.
Specifications
- Multi-locale build to include all new locales
- (RTL languages requires support from the Android UI for the likes of Arabic)
Bug Tracking
19 Total; 0 Open (0%); 19 Resolved (100%); 0 Verified (0%);
Android supported
Locales w/repos
Locale | Language | Scheduled |
---|---|---|
vi | Vietnamese | |
af | Afrikaans | |
el | Greek | |
sw | Swahili | |
zu | Zulu | |
gl | Galician | 36 |
Locales sans repos
Locale | Language | Scheduled |
---|---|---|
bg | Bulgarian | |
sr | Serbian | |
tl | Tagalog | |
rm | Romansh | |
my | Burmese | 37 |
ky | Kyrgyz | |
mk | Macedonian | |
ne-NP | Nepalese | |
si | Sinhala |
Blocked locales
Locale | Language | Scheduled | Repo | Blocks |
---|---|---|---|---|
he | Hebrew | Yes | RTL, Gecko/Java locale code, resources | |
ar | Arabic | Yes | RTL, resources | |
am | Amharic | No | RTL, resources | |
fa | Persian | Yes | RTL |
Sans Android support
Locales w/translations
Language | Location | Speakers | ADU's | Scheduled |
---|---|---|---|---|
Ligurian | Italy | 505,100 | 115,000 | |
Norwegian (Nynorsk) | Norway | 4,640,000 (East Scandinavian writing system) | 14,500 | |
Venda | South Africa | 1,064,000 | 13,500 | |
Xhosa | South Africa | 7,817,300 | 13,500 | 36 |
Albanian | Albania | 7,436,990 | 1,200 | 37 |
Acholi | Uganda | 1,197,000 | 1,000 | |
Songhay | Mali | ~1,100,000 | 500 | 37 |
Upper Sorbian | Germany | ~13,490 | 37 | |
Lower Sorbian | Germany | ~13,490 | 37 | |
Khmer | Cambodia/Thailand | 16,124,500 | 45,000 + 6,500 | |
Uzkeb | Uzbekistan | 25,000,000 | N/A | 37 |
Azerbaijani | Azerbaijan, Iran, Iraq, Turkey | 23,000,000 | N/A | 37 |
Locales w/out Fennec translations
Language | Location | Speakers | ADU's | Scheduled |
---|---|---|---|---|
Occitan | France | 2,048,310 | 150,000 | |
Asturian | Spain | 550,000 | 116,000 | |
Ilocano | Philippines | 7,016,400 | 30,000 | |
Kurdish | Iraq | 29,960,872 | 26,000 | |
Urdu | Pakistan | 63,431,800 | 14,500 | |
Tsonga | South Africa | 3,669,000 | 13,500 | |
Bengali (Bangladesh) | Bangladesh | 110,000,000 | 11,000 | |
Bosnian | Bosnia | 2,216,000 | 3,200 | |
Georgian | Georgia/Russia | 4,237,710 | 2,300 | |
Nbedele | Zimbabwe | 1,572,800 | 600 | |
Tswana | Botswana | 4,521,700 | 250 | |
Siswati | Swaziland | 2,034,200 | <100 | |
Southern Sotho | Lesotho | 6,024,000 | <50 |
Locales Included in our multi-locale APK
As of Fx22
- Brazilian Portuguese (pt-BR)
- Chinese (zh-CN)
- Chinese (zh-TW)
- Czech (cs)
- Danish (da)
- Dutch (nl)
- English (en-US)
- Finnish (fi)
- French (fr)
- German (de)
- Italian (it)
- Japanese (ja)
- Korean (ko)
- Norwegian bokmal (nb-NO)
- Polish (pl)
- Portuguese (pt-PT)
- Russian(ru)
- Slovak (sk_SK)
- Spanish (es-ES)
As of Fx23
- Hungarian (hu_HU)
- Turkish(tr)
As of Fx24
- British English (en_BR)
- Catalan (ca_ES)
- Swedish (sv_SE)
As of Fx 25
- Ukranian (uk)
- Irish (ga)
- Romanian (ro)
As of Fx 26
As of Fx 27
- South African English(en-ZA)
- Thai (th)
- Lithuanian (lt)
- Slovenian (sl)
As of Fx 28
- Estonian (et)
As of Fx 29
As of Fx 30
- Indonesian (id)
- Spanish (es-MX)
- Spanish (es-AR)
- Malay (ms)
- Belarusian (be)
- Latvian (lv)
As of Fx 31
- Assamese (as)
- Bengali (bn-IN)
- Hindi (hi-IN)
- Gujarati (gu-IN)
- Kannada (kn)
- Maithli (mai)
- Marathi (mr)
- Malayalam (ml)
- Punjabi (pa-IN)
- Oriya (or)
- Tamil (ta)
- Telugu (te)
As of 32
- Icelandic (is)
- Fulah (ff)
- Basque (eu)
- Scottish Gaelic (gd)
- Welsh (cy)
- Armenian (hy-AM)
As of 33
- Kazakh (kk)
- Aragonese (an)
- Frisian (fy-NL)
As of 34
As of 35
- Breton (br)
- Esperanto (eo)
As of 36
- Galician (gl)
- Xhosa (xh)
As of 37
- Upper Sorbian (hsb)
- Lower Sorbian (dsb)
- Songhay (son)
- Albanian (sq)
- Uzbek (uz)
- Burmese (my)
As of 38
- Azerbaijani (az)
As of 39
As of 40
Quality Criteria
- User stories must be satisfied
- Specifications must be met
- Multi-locale APK size must not exceed the previous release APK size by x% (important for ARMv6 users with less memory than high-end devices)