File size: 3,805 Bytes
f8b5d42
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
/*

To get the list of valid language codes - do the following:
Open the following URL in your browser: https://tesseract-ocr.github.io/tessdoc/Data-Files-in-different-versions.html

Check this element is the proper table tbody with all the codes via console:
document.getElementsByTagName('table').item(0).children.item(1)

Now, copy the following code and paste it into the console:
function parseLangs() {
let langs = {};
  Array.from(document.getElementsByTagName('table').item(0).children.item(1).children).forEach((el) => {
    const [codeEl, languageEl, ...rest] = el.children
    const code = codeEl.innerText.trim()
    const language = languageEl.innerText.trim()
    if (!!code && !!language) langs[code] = language
  })
  return langs;
}

now, run the function:
copy(parseLangs())
*/

const VALID_LANGUAGE_CODES = {
  afr: "Afrikaans",
  amh: "Amharic",
  ara: "Arabic",
  asm: "Assamese",
  aze: "Azerbaijani",
  aze_cyrl: "Azerbaijani - Cyrilic",
  bel: "Belarusian",
  ben: "Bengali",
  bod: "Tibetan",
  bos: "Bosnian",
  bre: "Breton",
  bul: "Bulgarian",
  cat: "Catalan; Valencian",
  ceb: "Cebuano",
  ces: "Czech",
  chi_sim: "Chinese - Simplified",
  chi_tra: "Chinese - Traditional",
  chr: "Cherokee",
  cos: "Corsican",
  cym: "Welsh",
  dan: "Danish",
  dan_frak: "Danish - Fraktur (contrib)",
  deu: "German",
  deu_frak: "German - Fraktur (contrib)",
  deu_latf: "German (Fraktur Latin)",
  dzo: "Dzongkha",
  ell: "Greek, Modern (1453-)",
  eng: "English",
  enm: "English, Middle (1100-1500)",
  epo: "Esperanto",
  equ: "Math / equation detection module",
  est: "Estonian",
  eus: "Basque",
  fao: "Faroese",
  fas: "Persian",
  fil: "Filipino (old - Tagalog)",
  fin: "Finnish",
  fra: "French",
  frk: "German - Fraktur (now deu_latf)",
  frm: "French, Middle (ca.1400-1600)",
  fry: "Western Frisian",
  gla: "Scottish Gaelic",
  gle: "Irish",
  glg: "Galician",
  grc: "Greek, Ancient (to 1453) (contrib)",
  guj: "Gujarati",
  hat: "Haitian; Haitian Creole",
  heb: "Hebrew",
  hin: "Hindi",
  hrv: "Croatian",
  hun: "Hungarian",
  hye: "Armenian",
  iku: "Inuktitut",
  ind: "Indonesian",
  isl: "Icelandic",
  ita: "Italian",
  ita_old: "Italian - Old",
  jav: "Javanese",
  jpn: "Japanese",
  kan: "Kannada",
  kat: "Georgian",
  kat_old: "Georgian - Old",
  kaz: "Kazakh",
  khm: "Central Khmer",
  kir: "Kirghiz; Kyrgyz",
  kmr: "Kurmanji (Kurdish - Latin Script)",
  kor: "Korean",
  kor_vert: "Korean (vertical)",
  kur: "Kurdish (Arabic Script)",
  lao: "Lao",
  lat: "Latin",
  lav: "Latvian",
  lit: "Lithuanian",
  ltz: "Luxembourgish",
  mal: "Malayalam",
  mar: "Marathi",
  mkd: "Macedonian",
  mlt: "Maltese",
  mon: "Mongolian",
  mri: "Maori",
  msa: "Malay",
  mya: "Burmese",
  nep: "Nepali",
  nld: "Dutch; Flemish",
  nor: "Norwegian",
  oci: "Occitan (post 1500)",
  ori: "Oriya",
  osd: "Orientation and script detection module",
  pan: "Panjabi; Punjabi",
  pol: "Polish",
  por: "Portuguese",
  pus: "Pushto; Pashto",
  que: "Quechua",
  ron: "Romanian; Moldavian; Moldovan",
  rus: "Russian",
  san: "Sanskrit",
  sin: "Sinhala; Sinhalese",
  slk: "Slovak",
  slk_frak: "Slovak - Fraktur (contrib)",
  slv: "Slovenian",
  snd: "Sindhi",
  spa: "Spanish; Castilian",
  spa_old: "Spanish; Castilian - Old",
  sqi: "Albanian",
  srp: "Serbian",
  srp_latn: "Serbian - Latin",
  sun: "Sundanese",
  swa: "Swahili",
  swe: "Swedish",
  syr: "Syriac",
  tam: "Tamil",
  tat: "Tatar",
  tel: "Telugu",
  tgk: "Tajik",
  tgl: "Tagalog (new - Filipino)",
  tha: "Thai",
  tir: "Tigrinya",
  ton: "Tonga",
  tur: "Turkish",
  uig: "Uighur; Uyghur",
  ukr: "Ukrainian",
  urd: "Urdu",
  uzb: "Uzbek",
  uzb_cyrl: "Uzbek - Cyrilic",
  vie: "Vietnamese",
  yid: "Yiddish",
  yor: "Yoruba",
};

module.exports.VALID_LANGUAGE_CODES = VALID_LANGUAGE_CODES;