Language tags are a system defined in RFC 3066, which is used in various Internet protocols and formats, including HTML, HTTP, and XML. For example, an HTTP request often has an Accept-Language header, an HTTP response can have a Content-Language header, and any HTML element can have a lang="en-US" or (in XML and XHTML) an xml:lang="en-US" attribute to indicate that its content is in that language.
There are many more language tags than are presented here; for the full list, see documentation for the Perl module I18N::LangTags::List. This appendix lists major languages, in alphabetical order by their English names.
Note: the core Perl module I18N::LangTags::List contains (as data table and as documentation you can read now) a much more complete list. I had to keep the list below short for sake of brevity of the book.)
Tag | Language |
---|---|
sq | Albanian |
ar | Arabic |
hy | Armenian |
as | Assamese |
eu | Basque |
be | Belarusian |
bn | Bengali/Bangla |
bg | Bulgarian |
ca | Catalan |
zh | Chinese |
zh-cn | · Mainland Chinese |
zh-tw | · Taiwan Chinese |
hr | Croatian |
cs | Czech |
da | Danish |
nl | Dutch |
en | English |
en-us | · American English |
en-gb | · British English |
et | Estonian |
fa | Farsi |
fi | Finnish |
fr | French |
fr-ca | · Canadian French |
fr-fr | · French French |
ga | Irish Gaelic |
gd | Scots Gaelic |
de | German |
el | Modern Greek |
grc | Ancient Greek |
gu | Gujarati |
haw | Hawaiian |
he | Hebrew |
hi | Hindi |
hu | Hungarian |
is | Icelandic |
id | Indonesian |
it | Italian |
ja | Japanese |
kn | Kannada |
ks | Kashmiri |
kok | Konkani |
ko | Korean |
la | Latin |
lv | Latvian |
lt | Lithuanian |
mk | Macedonian |
ms | Malay |
ml | Malayalam |
mt | Maltese |
mi | Maori |
mr | Marathi |
mni | Meithei/Manipuri |
ne | Nepali |
no | Norwegian |
nb | Norwegian Bokmål |
nn | Norwegian Nynorsk |
or | Oriya |
pl | Polish |
pt | Portuguese |
pt-br | · Brazilian Portuguese |
pt-pt | · European Portuguese |
pa | Punjabi |
ro | Romanian |
ru | Russian |
sa | Sanskrit |
sr | Serbian |
sd | Sindhi |
sk | Slovak |
sl | Slovene |
es | Spanish |
es-es | · European Spanish |
es-mx | · Mexican Spanish |
sv | Swedish |
tl | Tagalog |
ta | Tamil |
te | Telugu |
th | Thai |
tr | Turkish |
uk | Ukrainian |
ur | Urdu |
vi | Vietnamese |
cy | Welsh |
One of my more, uh, colicky consulting editors, had a some sort of fit of loud officiousness when he saw the above list. What's this Konkani? and Tee-loo-goo?! I've never heard of these languages! Who put this list together, who decided what got on this list?! etc etc.
I replied, basically: I put the list together (this being my book, and welcome to it), and while I decidedly will not walk you down the list explaining how each line satisfies one or more exacting criterion, FYI, it's basically a combination of:...and (I continued, to the colicky consulting editor), Konkani has more speakers than Danish (which you've heard of), and Telugu has more speakers than German (which you've heard of, and heard!), so failing to have ever heard of them is, well, just too bad for you.
- languages with huge numbers of speakers (Chinese, Spanish, Arabic)
- the four big languages of New World (English, Spanish, Portuguese, and French)
- the official languages of every European country
- the official languages of India (by some criterion I've now forgotten— this is a complicated and ever-changing issue)
- the official languages of other important Eurasian countries (Korean, Thai, Farsi, Urdu)
- plus whatever I felt like (Hawaiian, Hebrew, Basque, Ancient Greek)
- minus whatever I felt like (sorry, Flemish, Walloon, Romansh, and Luxembourgish, euro-official though you may be)