Default should be en-GB
It seems like the website has multiple issues regarding defaults and language detection:
Issue 1
Problem: If the browser's locale is not in the xx-YY format but is still BCP 47 compliant, it doesn't work properly. For example, my browser's locale is set to en-GB-oxendict, but the website chooses en-US anyway.
Solution: Resolve BCP 47 tags correctly and fall back to the most appropriate locale.
Issue 2
Problem: It seems like the website maps en to en-US, which is essentially the incorrect choice for 74% of the English-speaking world that is not the US, Liberia, or the Philippines.
Solution: It should be en-GB instead, which is what the overwhelming majority of the world uses.
Issue 3
Problem: On the home page, the language chooser in the footer has the label English and English (British), etc. for the other Englishes, giving the false sense—when the drop-down is closed—that there are no other English choices, and—when the drop-down is open—that US English is the "default English of the world", which is the opposite of the truth.
Solution: Either English should map to en-GB, or the label for US English should change to English (American) to be consistent and clear about what the user is getting.
- Yeah, we could probably improve this, https://pypi.org/project/python-bcp47/ would likely do a better job than the current code.
- The default is the base content language on this repository, content is written in en-US first and then translated to other languages. This is the same mapping mozilla.org uses.
enis a fallback code, no app should ever use it as the primary. Chrome, Firefox, and Edge all specify region for English. So this isn't really an issue in practice. - I agree, it should be
English (United States). That can be easily changed here.