From d6540310e4cd12cba67b0c2e6c666d94dd91f367 Mon Sep 17 00:00:00 2001 From: sinanmohd Date: Mon, 4 Mar 2024 14:38:48 +0530 Subject: mpv: respect slang var --- lib/iso639.lua | 202 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 202 insertions(+) create mode 100644 lib/iso639.lua (limited to 'lib') diff --git a/lib/iso639.lua b/lib/iso639.lua new file mode 100644 index 0000000..6e853db --- /dev/null +++ b/lib/iso639.lua @@ -0,0 +1,202 @@ +#!/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 -- cgit v1.2.3