Created
January 9, 2016 17:40
-
-
Save tkrajina/68982a1081498bb8bdb5 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package main | |
// From https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes | |
import ( | |
"encoding/json" | |
"fmt" | |
"strings" | |
) | |
const languages = `Northwest Caucasian Abkhaz аҧсуа бызшәа, аҧсшәа ab abk abk abk abks | |
Afro-Asiatic Afar Afaraf aa aar aar aar aars | |
Indo-European Afrikaans Afrikaans af afr afr afr afrs | |
Niger–Congo Akan Akan ak aka aka aka + 2 macrolanguage, Twi is [tw/twi], Fanti is [fat] | |
Indo-European Albanian Shqip sq sqi alb sqi + 4 macrolanguage, "Albanian Phylozone" in 639-6 | |
Afro-Asiatic Amharic አማርኛ am amh amh amh | |
Afro-Asiatic Arabic العربية ar ara ara ara + 30 macrolanguage, Standard Arabic is [arb] | |
Indo-European Aragonese aragonés an arg arg arg | |
Indo-European Armenian Հայերեն hy hye arm hye | |
Indo-European Assamese অসমীয়া as asm asm asm | |
Northeast Caucasian Avaric авар мацӀ, магӀарул мацӀ av ava ava ava | |
Indo-European Avestan avesta ae ave ave ave ancient | |
Aymaran Aymara aymar aru ay aym aym aym + 2 macrolanguage | |
Turkic Azerbaijani azərbaycan dili az aze aze aze + 2 macrolanguage | |
Niger–Congo Bambara bamanankan bm bam bam bam | |
Turkic Bashkir башҡорт теле ba bak bak bak | |
Language isolate Basque euskara, euskera eu eus baq eus | |
Indo-European Belarusian беларуская мова be bel bel bel | |
Indo-European Bengali, Bangla বাংলা bn ben ben ben | |
Indo-European Bihari भोजपुरी bh bih bih Collective language code for Bhojpuri, Magahi, and Maithili | |
Creole Bislama Bislama bi bis bis bis | |
Indo-European Bosnian bosanski jezik bs bos bos bos boss | |
Indo-European Breton brezhoneg br bre bre bre | |
Indo-European Bulgarian български език bg bul bul bul buls | |
Sino-Tibetan Burmese ဗမာစာ my mya bur mya | |
Indo-European Catalan català ca cat cat cat | |
Austronesian Chamorro Chamoru ch cha cha cha | |
Northeast Caucasian Chechen нохчийн мотт ce che che che | |
Niger–Congo Chichewa, Chewa, Nyanja chiCheŵa, chinyanja ny nya nya nya | |
Sino-Tibetan Chinese 中文 (Zhōngwén), 汉语, 漢語 zh zho chi zho + 13 macrolanguage | |
Turkic Chuvash чӑваш чӗлхи cv chv chv chv | |
Indo-European Cornish Kernewek kw cor cor cor | |
Indo-European Corsican corsu, lingua corsa co cos cos cos | |
Algonquian Cree ᓀᐦᐃᔭᐍᐏᐣ cr cre cre cre + 6 macrolanguage | |
Indo-European Croatian hrvatski jezik hr hrv hrv hrv | |
Indo-European Czech čeština, český jazyk cs ces cze ces | |
Indo-European Danish dansk da dan dan dan | |
Indo-European Divehi, Dhivehi, Maldivian ދިވެހި dv div div div | |
Indo-European Dutch Nederlands, Vlaams nl nld dut nld | |
Sino-Tibetan Dzongkha རྫོང་ཁ dz dzo dzo dzo | |
Indo-European English English en eng eng eng engs | |
Constructed Esperanto Esperanto eo epo epo epo constructed, initiated from L.L. Zamenhof, 1887 | |
Uralic Estonian eesti, eesti keel et est est est + 2 macrolanguage | |
Niger–Congo Ewe Eʋegbe ee ewe ewe ewe | |
Indo-European Faroese føroyskt fo fao fao fao | |
Austronesian Fijian vosa Vakaviti fj fij fij fij | |
Uralic Finnish suomi, suomen kieli fi fin fin fin | |
Indo-European French français, langue française fr fra fre fra fras | |
Niger–Congo Fula, Fulah, Pulaar, Pular Fulfulde, Pulaar, Pular ff ful ful ful + 9 macrolanguage | |
Indo-European Galician galego gl glg glg glg | |
South Caucasian Georgian ქართული ka kat geo kat | |
Indo-European German Deutsch de deu ger deu deus | |
Indo-European Greek (modern) ελληνικά el ell gre ell ells | |
Tupian Guaraní Avañe'ẽ gn grn grn grn + 5 macrolanguage | |
Indo-European Gujarati ગુજરાતી gu guj guj guj | |
Creole Haitian, Haitian Creole Kreyòl ayisyen ht hat hat hat | |
Afro-Asiatic Hausa (Hausa) هَوُسَ ha hau hau hau | |
Afro-Asiatic Hebrew (modern) עברית he heb heb heb | |
Niger–Congo Herero Otjiherero hz her her her | |
Indo-European Hindi हिन्दी, हिंदी hi hin hin hin hins | |
Austronesian Hiri Motu Hiri Motu ho hmo hmo hmo | |
Uralic Hungarian magyar hu hun hun hun | |
Constructed Interlingua Interlingua ia ina ina ina constructed by International Auxiliary Language Association | |
Austronesian Indonesian Bahasa Indonesia id ind ind ind Covered by macrolanguage [ms/msa] | |
Constructed Interlingue Originally called Occidental; then Interlingue after WWII ie ile ile ile constructed by Edgar de Wahl, first published in 1922 | |
Indo-European Irish Gaeilge ga gle gle gle | |
Niger–Congo Igbo Asụsụ Igbo ig ibo ibo ibo | |
Eskimo–Aleut Inupiaq Iñupiaq, Iñupiatun ik ipk ipk ipk + 2 macrolanguage | |
Constructed Ido Ido io ido ido ido idos constructed by De Beaufront, 1907, as variation of Esperanto | |
Indo-European Icelandic Íslenska is isl ice isl | |
Indo-European Italian italiano it ita ita ita itas | |
Eskimo–Aleut Inuktitut ᐃᓄᒃᑎᑐᑦ iu iku iku iku + 2 macrolanguage | |
Japonic Japanese 日本語 (にほんご) ja jpn jpn jpn | |
Austronesian Javanese basa Jawa jv jav jav jav | |
Eskimo–Aleut Kalaallisut, Greenlandic kalaallisut, kalaallit oqaasii kl kal kal kal | |
Dravidian Kannada ಕನ್ನಡ kn kan kan kan | |
Nilo-Saharan Kanuri Kanuri kr kau kau kau + 3 macrolanguage | |
Indo-European Kashmiri कश्मीरी, كشميري ks kas kas kas | |
Turkic Kazakh қазақ тілі kk kaz kaz kaz | |
Austroasiatic Khmer ខ្មែរ, ខេមរភាសា, ភាសាខ្មែរ km khm khm khm a.k.a. Cambodian | |
Niger–Congo Kikuyu, Gikuyu Gĩkũyũ ki kik kik kik | |
Niger–Congo Kinyarwanda Ikinyarwanda rw kin kin kin | |
Turkic Kyrgyz Кыргызча, Кыргыз тили ky kir kir kir | |
Uralic Komi коми кыв kv kom kom kom + 2 macrolanguage | |
Niger–Congo Kongo Kikongo kg kon kon kon + 3 macrolanguage | |
Koreanic Korean 한국어, 조선어 ko kor kor kor | |
Indo-European Kurdish Kurdî, كوردی ku kur kur kur + 3 macrolanguage | |
Niger–Congo Kwanyama, Kuanyama Kuanyama kj kua kua kua | |
Indo-European Latin latine, lingua latina la lat lat lat lats ancient | |
Indo-European Luxembourgish, Letzeburgesch Lëtzebuergesch lb ltz ltz ltz | |
Niger–Congo Ganda Luganda lg lug lug lug | |
Indo-European Limburgish, Limburgan, Limburger Limburgs li lim lim lim | |
Niger–Congo Lingala Lingála ln lin lin lin | |
Tai–Kadai Lao ພາສາລາວ lo lao lao lao | |
Indo-European Lithuanian lietuvių kalba lt lit lit lit | |
Niger–Congo Luba-Katanga Tshiluba lu lub lub lub | |
Indo-European Latvian latviešu valoda lv lav lav lav + 2 macrolanguage | |
Indo-European Manx Gaelg, Gailck gv glv glv glv | |
Indo-European Macedonian македонски јазик mk mkd mac mkd | |
Austronesian Malagasy fiteny malagasy mg mlg mlg mlg + 10 macrolanguage | |
Austronesian Malay bahasa Melayu, بهاس ملايو ms msa may msa + 13 macrolanguage, Standard Malay is [zsm], Indonesian is [id/ind] | |
Dravidian Malayalam മലയാളം ml mal mal mal | |
Afro-Asiatic Maltese Malti mt mlt mlt mlt | |
Austronesian Māori te reo Māori mi mri mao mri | |
Indo-European Marathi (Marāṭhī) मराठी mr mar mar mar | |
Austronesian Marshallese Kajin M̧ajeļ mh mah mah mah | |
Mongolic Mongolian Монгол хэл mn mon mon mon + 2 macrolanguage | |
Austronesian Nauruan Dorerin Naoero na nau nau nau | |
Dené–Yeniseian Navajo, Navaho Diné bizaad nv nav nav nav | |
Niger–Congo Northern Ndebele isiNdebele nd nde nde nde | |
Indo-European Nepali नेपाली ne nep nep nep | |
Niger–Congo Ndonga Owambo ng ndo ndo ndo | |
Indo-European Norwegian Bokmål Norsk bokmål nb nob nob nob Covered by macrolanguage [no/nor] | |
Indo-European Norwegian Nynorsk Norsk nynorsk nn nno nno nno Covered by macrolanguage [no/nor] | |
Indo-European Norwegian Norsk no nor nor nor + 2 macrolanguage, Bokmål is [nb/nob], Nynorsk is [nn/nno] | |
Sino-Tibetan Nuosu ꆈꌠ꒿ Nuosuhxop ii iii iii iii Standard form of Yi languages | |
Niger–Congo Southern Ndebele isiNdebele nr nbl nbl nbl | |
Indo-European Occitan occitan, lenga d'òc oc oci oci oci | |
Algonquian Ojibwe, Ojibwa ᐊᓂᔑᓈᐯᒧᐎᓐ oj oji oji oji + 7 macrolanguage | |
Indo-European Old Church Slavonic, Church Slavonic, Old Bulgarian ѩзыкъ словѣньскъ cu chu chu chu ancient, in use by Orthodox Church | |
Afro-Asiatic Oromo Afaan Oromoo om orm orm orm + 4 macrolanguage | |
Indo-European Oriya ଓଡ଼ିଆ or ori ori ori | |
Indo-European Ossetian, Ossetic ирон æвзаг os oss oss oss | |
Indo-European Panjabi, Punjabi ਪੰਜਾਬੀ, پنجابی pa pan pan pan | |
Indo-European Pāli पाऴि pi pli pli pli ancient | |
Indo-European Persian (Farsi) فارسی fa fas per fas + 2 macrolanguage | |
Indo-European Polish język polski, polszczyzna pl pol pol pol pols | |
Indo-European Pashto, Pushto پښتو ps pus pus pus + 3 macrolanguage | |
Indo-European Portuguese português pt por por por | |
Quechuan Quechua Runa Simi, Kichwa qu que que que + 44 macrolanguage | |
Indo-European Romansh rumantsch grischun rm roh roh roh | |
Niger–Congo Kirundi Ikirundi rn run run run | |
Indo-European Romanian limba română ro ron rum ron [mo] for Moldavian has been withdrawn, recommending [ro] also for Moldavian | |
Indo-European Russian Русский ru rus rus rus | |
Indo-European Sanskrit (Saṁskṛta) संस्कृतम् sa san san san ancient, still spoken | |
Indo-European Sardinian sardu sc srd srd srd + 4 macrolanguage | |
Indo-European Sindhi सिन्धी, سنڌي، سندھی sd snd snd snd | |
Uralic Northern Sami Davvisámegiella se sme sme sme | |
Austronesian Samoan gagana fa'a Samoa sm smo smo smo | |
Creole Sango yângâ tî sängö sg sag sag sag | |
Indo-European Serbian српски језик sr srp srp srp The ISO 639-2/T code srp deprecated the ISO 639-2/B code scc[1] | |
Indo-European Scottish Gaelic, Gaelic Gàidhlig gd gla gla gla | |
Niger–Congo Shona chiShona sn sna sna sna | |
Indo-European Sinhala, Sinhalese සිංහල si sin sin sin | |
Indo-European Slovak slovenčina, slovenský jazyk sk slk slo slk | |
Indo-European Slovene slovenski jezik, slovenščina sl slv slv slv | |
Afro-Asiatic Somali Soomaaliga, af Soomaali so som som som | |
Niger–Congo Southern Sotho Sesotho st sot sot sot | |
Indo-European Spanish español es spa spa spa | |
Austronesian Sundanese Basa Sunda su sun sun sun | |
Niger–Congo Swahili Kiswahili sw swa swa swa + 2 macrolanguage | |
Niger–Congo Swati SiSwati ss ssw ssw ssw | |
Indo-European Swedish svenska sv swe swe swe | |
Dravidian Tamil தமிழ் ta tam tam tam | |
Dravidian Telugu తెలుగు te tel tel tel | |
Indo-European Tajik тоҷикӣ, toçikī, تاجیکی tg tgk tgk tgk | |
Tai–Kadai Thai ไทย th tha tha tha | |
Afro-Asiatic Tigrinya ትግርኛ ti tir tir tir | |
Sino-Tibetan Tibetan Standard, Tibetan, Central བོད་ཡིག bo bod tib bod | |
Turkic Turkmen Türkmen, Түркмен tk tuk tuk tuk | |
Austronesian Tagalog Wikang Tagalog, ᜏᜒᜃᜅ᜔ ᜆᜄᜎᜓᜄ᜔ tl tgl tgl tgl Note: Filipino (Pilipino) has the code [fil] | |
Niger–Congo Tswana Setswana tn tsn tsn tsn | |
Austronesian Tonga (Tonga Islands) faka Tonga to ton ton ton | |
Turkic Turkish Türkçe tr tur tur tur | |
Niger–Congo Tsonga Xitsonga ts tso tso tso | |
Turkic Tatar татар теле, tatar tele tt tat tat tat | |
Niger–Congo Twi Twi tw twi twi twi Covered by macrolanguage [ak/aka] | |
Austronesian Tahitian Reo Tahiti ty tah tah tah One of the Reo Mā` + "`" + `ohi (languages of French Polynesia) | |
Turkic Uyghur ئۇيغۇرچە, Uyghurche ug uig uig uig | |
Indo-European Ukrainian Українська uk ukr ukr ukr | |
Indo-European Urdu اردو ur urd urd urd | |
Turkic Uzbek Oʻzbek, Ўзбек, أۇزبېك uz uzb uzb uzb + 2 macrolanguage | |
Niger–Congo Venda Tshivenḓa ve ven ven ven | |
Austroasiatic Vietnamese Tiếng Việt vi vie vie vie | |
Constructed Volapük Volapük vo vol vol vol constructed | |
Indo-European Walloon walon wa wln wln wln | |
Indo-European Welsh Cymraeg cy cym wel cym | |
Niger–Congo Wolof Wollof wo wol wol wol | |
Indo-European Western Frisian Frysk fy fry fry fry | |
Niger–Congo Xhosa isiXhosa xh xho xho xho | |
Indo-European Yiddish ייִדיש yi yid yid yid + 2 macrolanguage | |
Niger–Congo Yoruba Yorùbá yo yor yor yor | |
Tai–Kadai Zhuang, Chuang Saɯ cueŋƅ, Saw cuengh za zha zha zha + 16 macrolanguage | |
Niger–Congo Zulu isiZulu zu zul zul zul ` | |
type Language struct { | |
Abbrev, Family, Name, NativeName string | |
} | |
func main() { | |
lines := strings.Split(languages, "\n") | |
for _, line := range lines { | |
parts := strings.Split(line, "\t") | |
language := Language{ | |
Abbrev: strings.TrimSpace(parts[3]), | |
Family: strings.TrimSpace(parts[0]), | |
Name: strings.TrimSpace(parts[1]), | |
NativeName: strings.TrimSpace(parts[2]), | |
} | |
bytes, _ := json.Marshal(language) | |
fmt.Println(string(bytes)) | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment