This English list of languages should be fairly complete / List for ISO 639 - 2
If needed the country is specified as further detail / List for ISO 3166 - 1
So if a language is spoken in more than one country the code can consist of more than just the language code to allow the user to choose the version that is more native to him (if available). In this case the code of the language is usually written with lower case letters and the country name is with upper case letters.
Examples: es-ES standart Spanish of Spain.
There are several more languages spoken in Spain: an-Es is AFAIK Aragonese.
But standart Spanish also has a Argentinian variant: es-AR
In some cases I also found both language and country specified where the language is spoken in only one country as official/common language.
But usually You would in this case only specify the language:
et = Estonian
Edited 1 time(s). Last edit at 08/15/2011 09:24PM by guenter.