Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Where can I find a list of language + region codes?

I have googled (well, DuckDuckGo'ed, actually) till I'm blue in the face, but cannot find a list of language codes of the type en-GB or fr-CA anywhere.

There are excellent resources about the components, in particular the W3C I18n page, but I was hoping for a simple alphabetical listing, fairly canonical if possible (something like this one). Cannot find.

Can anyone point me in the right direction? Many thanks!

like image 275
Dɑvïd Avatar asked Nov 07 '12 11:11

Dɑvïd


People also ask

What is zh CN language code?

zh-cn. Chinese (Hong Kong)

What is Arabic language code?

Arabic (Saudi Arabia) ar-SY.

What is ISO language code?

ISO language codes are the standard for linguistic codification worldwide. The most famous standard sets are ISO 639 (and the subsets ISO 639-1, ISO 639-2, ISO 639-3) for language codes, and ISO 15924 as standardization of language scripts.


4 Answers

There are 2 components in play here :

  1. The language tag which is generally defined by ISO 639-1 alpha-2
  2. The region tag which is generally defined by ISO 3166-1 alpha-2

You can mix and match languages and regions in whichever combination makes sense to you so there is no list of all possibilities.

BTW, you're effectively using a BCP47 tag, which defines the standards for each locale segment.

like image 22
tigrish Avatar answered Oct 11 '22 17:10

tigrish


There are several language code systems and several region code systems, as well as their combinations. As you refer to a W3C page, I presume that you are referring to the system defined in BCP 47. That system is orthogonal in the sense that codes like en-GB and fr-CA simply combine a language code and a region code. This means a very large number of possible combinations, most of which make little sense, like ab-AX, which means Abkhaz as spoken in Åland (I don’t think anyone, still less any community, speaks Abkhaz there, though it is theoretically possible of course).

So any list of language-region combinations would be just a pragmatic list of combinations that are important in some sense, or supported by some software in some special sense.

The specifications that you have found define the general principles and also the authoritative sources on different “subtags” (like primary language code and region code). For the most important parts, the official registration authority maintains the three- and two-letter ISO 639 codes for languages, and the ISO site contains the two-letter ISO 3166 codes for regions. The lists are quite readable, and I see no reason to consider using other than these primary resources, especially regarding possible changes.

like image 68
Jukka K. Korpela Avatar answered Oct 11 '22 16:10

Jukka K. Korpela


Unicode maintains such a list : http://unicode.org/repos/cldr-tmp/trunk/diff/supplemental/index.html Even better, you can have it in an XML format (ideal to parse the list) and with also the usual writing systems used by each language : http://unicode.org/repos/cldr/trunk/common/supplemental/supplementalData.xml (look in /LanguageData)

like image 8
Thomas CORDONNIER Avatar answered Oct 11 '22 16:10

Thomas CORDONNIER


One solution would be to parse this list, it would give you all of the keys needed to create the list you are looking for.

http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry

like image 3
Adam Avatar answered Oct 11 '22 18:10

Adam