#!/usr/bin/env luajit
local M = {}
local map = {
['ab'] = 'abk',
['aa'] = 'aar',
['af'] = 'afr',
['ak'] = 'aka',
['sq'] = 'sqi',
['am'] = 'amh',
['ar'] = 'ara',
['an'] = 'arg',
['hy'] = 'hye',
['as'] = 'asm',
['av'] = 'ava',
['ae'] = 'ave',
['ay'] = 'aym',
['az'] = 'aze',
['bm'] = 'bam',
['ba'] = 'bak',
['eu'] = 'eus',
['be'] = 'bel',
['bn'] = 'ben',
['bi'] = 'bis',
['bs'] = 'bos',
['br'] = 'bre',
['bg'] = 'bul',
['my'] = 'mya',
['ca'] = 'cat',
['ch'] = 'cha',
['ce'] = 'che',
['ny'] = 'nya',
['zh'] = 'zho',
['cu'] = 'chu',
['cv'] = 'chv',
['kw'] = 'cor',
['co'] = 'cos',
['cr'] = 'cre',
['hr'] = 'hrv',
['cs'] = 'ces',
['da'] = 'dan',
['dv'] = 'div',
['nl'] = 'nld',
['dz'] = 'dzo',
['en'] = 'eng',
['eo'] = 'epo',
['et'] = 'est',
['ee'] = 'ewe',
['fo'] = 'fao',
['fj'] = 'fij',
['fi'] = 'fin',
['fr'] = 'fra',
['fy'] = 'fry',
['ff'] = 'ful',
['gd'] = 'gla',
['gl'] = 'glg',
['lg'] = 'lug',
['ka'] = 'kat',
['de'] = 'deu',
['el'] = 'ell',
['kl'] = 'kal',
['gn'] = 'grn',
['gu'] = 'guj',
['ht'] = 'hat',
['ha'] = 'hau',
['he'] = 'heb',
['hz'] = 'her',
['hi'] = 'hin',
['ho'] = 'hmo',
['hu'] = 'hun',
['is'] = 'isl',
['io'] = 'ido',
['ig'] = 'ibo',
['id'] = 'ind',
['ia'] = 'ina',
['ie'] = 'ile',
['iu'] = 'iku',
['ik'] = 'ipk',
['ga'] = 'gle',
['it'] = 'ita',
['ja'] = 'jpn',
['jv'] = 'jav',
['kn'] = 'kan',
['kr'] = 'kau',
['ks'] = 'kas',
['kk'] = 'kaz',
['km'] = 'khm',
['ki'] = 'kik',
['rw'] = 'kin',
['ky'] = 'kir',
['kv'] = 'kom',
['kg'] = 'kon',
['ko'] = 'kor',
['kj'] = 'kua',
['ku'] = 'kur',
['lo'] = 'lao',
['la'] = 'lat',
['lv'] = 'lav',
['li'] = 'lim',
['ln'] = 'lin',
['lt'] = 'lit',
['lu'] = 'lub',
['lb'] = 'ltz',
['mk'] = 'mkd',
['mg'] = 'mlg',
['ms'] = 'msa',
['ml'] = 'mal',
['mt'] = 'mlt',
['gv'] = 'glv',
['mi'] = 'mri',
['mr'] = 'mar',
['mh'] = 'mah',
['mn'] = 'mon',
['na'] = 'nau',
['nv'] = 'nav',
['nd'] = 'nde',
['nr'] = 'nbl',
['ng'] = 'ndo',
['ne'] = 'nep',
['no'] = 'nor',
['nb'] = 'nob',
['nn'] = 'nno',
['ii'] = 'iii',
['oc'] = 'oci',
['oj'] = 'oji',
['or'] = 'ori',
['om'] = 'orm',
['os'] = 'oss',
['pi'] = 'pli',
['ps'] = 'pus',
['fa'] = 'fas',
['pl'] = 'pol',
['pt'] = 'por',
['pa'] = 'pan',
['qu'] = 'que',
['ro'] = 'ron',
['rm'] = 'roh',
['rn'] = 'run',
['ru'] = 'rus',
['se'] = 'sme',
['sm'] = 'smo',
['sg'] = 'sag',
['sa'] = 'san',
['sc'] = 'srd',
['sr'] = 'srp',
['sn'] = 'sna',
['sd'] = 'snd',
['si'] = 'sin',
['sk'] = 'slk',
['sl'] = 'slv',
['so'] = 'som',
['st'] = 'sot',
['es'] = 'spa',
['su'] = 'sun',
['sw'] = 'swa',
['ss'] = 'ssw',
['sv'] = 'swe',
['tl'] = 'tgl',
['ty'] = 'tah',
['tg'] = 'tgk',
['ta'] = 'tam',
['tt'] = 'tat',
['te'] = 'tel',
['th'] = 'tha',
['bo'] = 'bod',
['ti'] = 'tir',
['to'] = 'ton',
['ts'] = 'tso',
['tn'] = 'tsn',
['tr'] = 'tur',
['tk'] = 'tuk',
['tw'] = 'twi',
['ug'] = 'uig',
['uk'] = 'ukr',
['ur'] = 'urd',
['uz'] = 'uzb',
['ve'] = 'ven',
['vi'] = 'vie',
['vo'] = 'vol',
['wa'] = 'wln',
['cy'] = 'cym',
['wo'] = 'wol',
['xh'] = 'xho',
['yi'] = 'yid',
['yo'] = 'yor',
['za'] = 'zha',
['zu'] = 'zul',
}
M.toset2 = function(iso639_lang)
if iso639_lang:len() == 2 then
-- convert to set1 to set2
return map[iso639_lang]
elseif iso639_lang:len() == 3 then
-- retun as it is if arg is already set 2.
-- we blindly trust it's valid if there's 3 chars
return iso639_lang
end
end
return M