diff --git a/src/example_page_1/de-DE.md b/src/example_page_1/de-DE.md
index 684548a..5c6361a 100644
--- a/src/example_page_1/de-DE.md
+++ b/src/example_page_1/de-DE.md
@@ -1,3 +1,5 @@
+meow
+
# Abstrahere reddita celebrare in ossa
## Usque de celebrabant puer
diff --git a/src/example_page_1/ku.md b/src/example_page_1/ku.md
new file mode 100644
index 0000000..5c6361a
--- /dev/null
+++ b/src/example_page_1/ku.md
@@ -0,0 +1,57 @@
+meow
+
+# Abstrahere reddita celebrare in ossa
+
+## Usque de celebrabant puer
+
+Lorem markdownum, nec ora et vero me nec natae suadent. Nec damno ignorat
+propiore aliquid temptata decipienda habetur. Vulnera lacrimis aequoreo madidos,
+copia uvae, herbosaque quoque, per harenas, canos fui monstro Peleus.
+
+Et fuge cum liquidum puer Herculis arentis, tantum caudaque et generi vilior, in
+rubore. Caeli modo palmis, suo tria accipe visus non similis qui remittat
+retentus porrigit fluxit ubi testis.
+
+> Sulphura et color reliquit dextera: quid summa continuere obductos egesto
+> moriens **fluentia vult iunctamque**, mihi patres spiro. Est Iovis **imperat
+> quem est** putavi annis *omnis*; flumina, leporem constabat grave pelagi,
+> insiluit, igne invito? Auctor circuit quod.
+
+## Rhoetus gravis
+
+Parari modo in sustulerat: ora sic verba meruit, uti. Pignora citus facto
+amplectimur cupido amentes foedantem multoque datura.
+[Quid](http://www.prima.net/se) ex tanti armaque exhibita descenderat!
+
+1. Alis ima
+2. Mirantur nive sit
+3. Maris ut adlabimur humana fine quam vultusque
+
+## A idonea miserum
+
+Montes tibi deorum igitur. Poterat nunc porrigitur perdidimus *sidereos animi
+praesepia* nihil praeferri functa, in **Pleias removete** oculos sollemni
+Tatius: **modo**. Inde dedit! Atque in matrem spinae foret ponti quam dixit,
+aras. Gladii addendum fiducia magno, se quo fata humo esse **tellure corpora
+discederet** sucis manibus, parentem ante, Iovem.
+
+Laqueique honore sequentia tyranni Harpalos, paelex, foedat tempestiva nomen.
+Sit ter indiciumque requirit utrumque in nil et *suspectus*, quaerite patriam
+nec facta [securi](http://heuqua.io/adhaut). Confessa ut per sit nostro futura
+metaque oblitae fameque exit adspiciens. Morte flectere invidiam certe cum
+vixque *nubes clamor viderunt* praeceps infamis collo percussis axem plena saxum
+urbes ferre undae. Totoque utuntur ore lupus inplet sibila ullam, qui corpore
+*contermina aera*?
+
+Convocat ipse abeunt sententia concolor a Auguste epops solent iubet qui
+aequora. In illi, solvente resecare violentam nescio accipit multarum [aureus
+exspectatus](http://oris-tibi.io/nasci) ergo ora. Positis **inquit**, sit iamque
+hederae ulterius, pontus linguae matutina terra sic isse Graium passosque
+sanguinis secus petit!
+
+Adfore dei volucrum Lydas; [hoc](http://similemnescitve.net/ipsamquee) quam
+[superosque](http://www.quoqueabit.com/cumqueiam.html) caligine vulnera quoque
+corpus foedaque mentis qui nectare, fatendo sensit! Rursus nulli miraris nuda
+*Acrisio*. Cum modo, satis dissuadet luce; cum *freta* ab et diu, labor *tenuata
+ieiunia*? Caesosque thalamique precor, dedit nulla loca [arce
+et](http://viscera-rerum.com/mixta) tinguit aera.
diff --git a/stsg/build.py b/stsg/build.py
index 000166f..65425df 100644
--- a/stsg/build.py
+++ b/stsg/build.py
@@ -5,7 +5,7 @@ import os
import markdown
from typing import Optional
-from .config import SOURCE_DIRECTORY, DIST_DIRECTORY, STATIC_DIRECTORY
+from .config import SOURCE_DIRECTORY, DIST_DIRECTORY, LANGUAGE_INFORMATION
logger = logging.getLogger("stsg.build")
@@ -96,9 +96,28 @@ class CustomLanguageCode:
def __repr__(self) -> str:
return f"{self.language_code}"
+ def _get_additional_data(self) -> dict:
+ parsed_language_code = self.language_code.lower().replace("-", "_")
+ if parsed_language_code in LANGUAGE_INFORMATION:
+ return LANGUAGE_INFORMATION[parsed_language_code]
+
+ parsed_language_code = parsed_language_code.split("_")[0]
+ if parsed_language_code in LANGUAGE_INFORMATION:
+ return LANGUAGE_INFORMATION[parsed_language_code]
+
+ return {}
+
+ @property
+ def flag(self) -> str:
+ return self._get_additional_data()["flag"]
+
+ @property
+ def native_name(self) -> str:
+ return self._get_additional_data()["native_name"]
+
@property
def html_code(self) -> str:
- return f'
'
+ return f''
def walk_directory(root):
diff --git a/stsg/config.py b/stsg/config.py
index b1fcd7e..eaf9bfb 100644
--- a/stsg/config.py
+++ b/stsg/config.py
@@ -9,154 +9,745 @@ STATIC_DIRECTORY = "static"
CODE_DIRECTORY = "stsg"
# LANGUAGE INFORMATION
-
-LANGUAGES = {
- af: { flag: '🇿🇦', name: 'Afrikaans', native_name: 'Afrikaans' },
- am: { flag: '🇪🇹', name: 'Amharic', native_name: 'አማርኛ' },
- an: { flag: '🇪🇸', name: 'Aragonese', native_name: 'aragonés' },
- ar: { flag: '🇸🇦', name: 'Arabic', native_name: 'العربية' },
- ar_ae: { flag: '🇦🇪', name: 'Arabic (UAE)', native_name: 'العربية (الإمارات)' },
- ar_bh: { flag: '🇧🇭', name: 'Arabic (Bahrain)', native_name: 'العربية (البحرين)' },
- ar_dz: { flag: '🇩🇿', name: 'Arabic (Algeria)', native_name: 'العربية (الجزائر)' },
- ar_eg: { flag: '🇪🇬', name: 'Arabic (Egypt)', native_name: 'العربية (مصر)' },
- ar_iq: { flag: '🇮🇶', name: 'Arabic (Iraq)', native_name: 'العربية (العراق)' },
- ar_jo: { flag: '🇯🇴', name: 'Arabic (Jordan)', native_name: 'العربية (الأردن)' },
- ar_kw: { flag: '🇰🇼', name: 'Arabic (Kuwait)', native_name: 'العربية (الكويت)' },
- ar_lb: { flag: '🇱🇧', name: 'Arabic (Lebanon)', native_name: 'العربية (لبنان)' },
- ar_ly: { flag: '🇱🇾', name: 'Arabic (Libya)', native_name: 'العربية (ليبيا)' },
- ar_ma: { flag: '🇲🇦', name: 'Arabic (Morocco)', native_name: 'العربية (المغرب)' },
- ar_om: { flag: '🇴🇲', name: 'Arabic (Oman)', native_name: 'العربية (عُمان)' },
- ar_qa: { flag: '🇶🇦', name: 'Arabic (Qatar)', native_name: 'العربية (قطر)' },
- ar_sa: { flag: '🇸🇦', name: 'Arabic (Saudi Arabia)', native_name: 'العربية (السعودية)' },
- ar_sd: { flag: '🇸🇩', name: 'Arabic (Sudan)', native_name: 'العربية (السودان)' },
- ar_sy: { flag: '🇸🇾', name: 'Arabic (Syria)', native_name: 'العربية (سوريا)' },
- ar_tn: { flag: '🇹🇳', name: 'Arabic (Tunisia)', native_name: 'العربية (تونس)' },
- ar_ye: { flag: '🇾🇪', name: 'Arabic (Yemen)', native_name: 'العربية (اليمن)' },
- ars_ae: { flag: '🇦🇪', name: 'Najdi Arabic (UAE)', native_name: 'نَجْدِيّ' },
- ars_arab_sa: { flag: '🇸🇦', name: 'Najdi Arabic (Saudi Arabia, Arabic Script)', native_name: 'نَجْدِيّ' },
- ars_sa: { flag: '🇸🇦', name: 'Najdi Arabic (Saudi Arabia)', native_name: 'نَجْدِيّ' },
- as: { flag: '🇮🇳', name: 'Assamese', native_name: 'অসমীয়া' },
- az: { flag: '🇦🇿', name: 'Azerbaijani', native_name: 'Azərbaycan' },
- be: { flag: '🇧🇾', name: 'Belarusian', native_name: 'Беларуская' },
- bg: { flag: '🇧🇬', name: 'Bulgarian', native_name: 'Български' },
- bm: { flag: '🇲🇱', name: 'Bambara', native_name: 'bamanankan' },
- bn: { flag: '🇧🇩', name: 'Bengali', native_name: 'বাংলা' },
- bn_in: { flag: '🇮🇳', name: 'Bengali (India)', native_name: 'বাংলা (ভারত)' },
- br: { flag: '🏴', name: 'Breton', native_name: 'brezhoneg' },
- bs: { flag: '🇧🇦', name: 'Bosnian', native_name: 'Bosanski' },
- ca: { flag: '🇪🇸', name: 'Catalan', native_name: 'Català' },
- crh: { flag: '🇺🇦', name: 'Crimean Tatar', native_name: 'qırımtatarca' },
- cs: { flag: '🇨🇿', name: 'Czech', native_name: 'Čeština' },
- cv: { flag: '🇷🇺', name: 'Chuvash', native_name: 'чӑваш чӗлхи' },
- cy: { flag: '🏴', name: 'Welsh', native_name: 'Cymraeg' },
- da: { flag: '🇩🇰', name: 'Danish', native_name: 'Dansk' },
- de: { flag: '🇩🇪', name: 'German', native_name: 'Deutsch' },
- de_at: { flag: '🇦🇹', name: 'German (Austria)', native_name: 'Deutsch (Österreich)' },
- de_be: { flag: '🇧🇪', name: 'German (Belgium)', native_name: 'Deutsch (Belgien)' },
- de_ch: { flag: '🇨🇭', name: 'German (Switzerland)', native_name: 'Deutsch (Schweiz)' },
- dv: { flag: '🇲🇻', name: 'Dhivehi', native_name: 'ދިވެހި' },
- dz: { flag: '🇧🇹', name: 'Dzongkha', native_name: 'རྫོང་ཁ' },
- el: { flag: '🇬🇷', name: 'Greek', native_name: 'Ελληνικά' },
- en: { flag: '🇺🇸', name: 'English', native_name: 'English' },
- en_au: { flag: '🇦🇺', name: 'English (Australia)', native_name: 'English (Australia)' },
- en_ca: { flag: '🇨🇦', name: 'English (Canada)', native_name: 'English (Canada)' },
- en_gb: { flag: '🇬🇧', name: 'English (UK)', native_name: 'English (UK)' },
- en_ie: { flag: '🇮🇪', name: 'English (Ireland)', native_name: 'English (Ireland)' },
- en_in: { flag: '🇮🇳', name: 'English (India)', native_name: 'English (India)' },
- en_nz: { flag: '🇳🇿', name: 'English (New Zealand)', native_name: 'English (New Zealand)' },
- en_us: { flag: '🇺🇸', name: 'English (US)', native_name: 'English (US)' },
- es: { flag: '🇪🇸', name: 'Spanish', native_name: 'Español' },
- es_ar: { flag: '🇦🇷', name: 'Spanish (Argentina)', native_name: 'Español (Argentina)' },
- es_mx: { flag: '🇲🇽', name: 'Spanish (Mexico)', native_name: 'Español (México)' },
- et: { flag: '🇪🇪', name: 'Estonian', native_name: 'Eesti' },
- fa: { flag: '🇮🇷', name: 'Persian', native_name: 'فارسی' },
- ff: { flag: '🌍', name: 'Fula', native_name: 'Fulfulde' },
- fi: { flag: '🇫🇮', name: 'Finnish', native_name: 'Suomi' },
- fo: { flag: '🇫🇴', name: 'Faroese', native_name: 'føroyskt' },
- fr: { flag: '🇫🇷', name: 'French', native_name: 'Français' },
- fr_ca: { flag: '🇨🇦', name: 'French (Canada)', native_name: 'Français (Canada)' },
- fr_ch: { flag: '🇨🇭', name: 'French (Switzerland)', native_name: 'Français (Suisse)' },
- ga: { flag: '🇮🇪', name: 'Irish', native_name: 'Gaeilge' },
- gl: { flag: '🇪🇸', name: 'Galician', native_name: 'Galego' },
- gn: { flag: '🇵🇾', name: 'Guarani', native_name: "Avañe'ẽ" },
- gu: { flag: '🇮🇳', name: 'Gujarati', native_name: 'ગુજરાતી' },
- ha: { flag: '🇳🇬', name: 'Hausa', native_name: 'هَوُسَ' },
- he: { flag: '🇮🇱', name: 'Hebrew', native_name: 'עברית' },
- hi: { flag: '🇮🇳', name: 'Hindi', native_name: 'हिन्दी' },
- hr: { flag: '🇭🇷', name: 'Croatian', native_name: 'Hrvatski' },
- ht: { flag: '🇭🇹', name: 'Haitian Creole', native_name: 'Kreyòl ayisyen' },
- hu: { flag: '🇭🇺', name: 'Hungarian', native_name: 'Magyar' },
- id: { flag: '🇮🇩', name: 'Indonesian', native_name: 'Bahasa Indonesia' },
- io: { flag: '🌍', name: 'Ido', native_name: 'Ido' },
- is: { flag: '🇮🇸', name: 'Icelandic', native_name: 'Íslenska' },
- it: { flag: '🇮🇹', name: 'Italian', native_name: 'Italiano' },
- ja: { flag: '🇯🇵', name: 'Japanese', native_name: '日本語' },
- jv_id: { flag: '🇮🇩', name: 'Javanese (Indonesia)', native_name: 'basa jawa' },
- ka: { flag: '🇬🇪', name: 'Georgian', native_name: 'ქართული' },
- kg: { flag: '🇨🇬', name: 'Kongo', native_name: 'KiKongo' },
- kj: { flag: '🇳🇦', name: 'Kuanyama', native_name: 'Oshikwanyama' },
- kk: { flag: '🇰🇿', name: 'Kazakh', native_name: 'Қазақ' },
- kl: { flag: '🇬🇱', name: 'Kalaallisut', native_name: 'kalaallisut' },
- km: { flag: '🇰🇭', name: 'Khmer', native_name: 'ខ្មែរ' },
- ko: { flag: '🇰🇷', name: 'Korean', native_name: '한국어' },
- ks: { flag: '🇮🇳', name: 'Kashmiri', native_name: 'کٲشُر' },
- ku: { flag: '🇮🇶', name: 'Kurdish', native_name: 'Kurdî' },
- lo: { flag: '🇱🇦', name: 'Lao', native_name: 'ລາວ' },
- lt: { flag: '🇱🇹', name: 'Lithuanian', native_name: 'Lietuvių' },
- lv: { flag: '🇱🇻', name: 'Latvian', native_name: 'Latviešu' },
- mg: { flag: '🇲🇬', name: 'Malagasy', native_name: 'Malagasy' },
- mg_mg: { flag: '🇲🇬', name: 'Malagasy (Madagascar)', native_name: 'malagasy' },
- mh: { flag: '🇲🇭', name: 'Marshallese', native_name: 'Kajin M̧ajeļ' },
- mk: { flag: '🇲🇰', name: 'Macedonian', native_name: 'Македонски' },
- mn_mn: { flag: '🇲🇳', name: 'Mongolian (Mongolia)', native_name: 'Монгол хэл' },
- mr_in: { flag: '🇮🇳', name: 'Marathi (India)', native_name: 'मराठी' },
- ms: { flag: '🇲🇾', name: 'Malay', native_name: 'Bahasa Melayu' },
- my: { flag: '🇲🇲', name: 'Burmese', native_name: 'မြန်မာဘာသာ' },
- na: { flag: '🇳🇷', name: 'Nauruan', native_name: 'Dorerin Naoero' },
- nb: { flag: '🇳🇴', name: 'Norwegian Bokmål', native_name: 'Norsk Bokmål' },
- ng: { flag: '🇳🇦', name: 'Ndonga', native_name: 'Oshindonga' },
- nl: { flag: '🇳🇱', name: 'Dutch', native_name: 'Nederlands' },
- om: { flag: '🇪🇹', name: 'Oromo', native_name: 'Afaan Oromoo' },
- os: { flag: '🇷🇺', name: 'Ossetian', native_name: 'ирон æвзаг' },
- pl: { flag: '🇵🇱', name: 'Polish', native_name: 'Polski' },
- pt: { flag: '🇵🇹', name: 'Portuguese', native_name: 'Português' },
- pt_br: { flag: '🇧🇷', name: 'Portuguese (Brazil)', native_name: 'Português (Brasil)' },
- qu: { flag: '🇵🇪', name: 'Quechua', native_name: 'Runa Simi' },
- ro: { flag: '🇷🇴', name: 'Romanian', native_name: 'Română' },
- ru: { flag: '🇷🇺', name: 'Russian', native_name: 'Русский' },
- rw: { flag: '🇷🇼', name: 'Kinyarwanda', native_name: 'Ikinyarwanda' },
- sc: { flag: '🇮🇹', name: 'Sardinian', native_name: 'sardu' },
- sg: { flag: '🇨🇫', name: 'Sango', native_name: 'yângâ tî sängö' },
- sk: { flag: '🇸🇰', name: 'Slovak', native_name: 'Slovenčina' },
- sl: { flag: '🇸🇮', name: 'Slovenian', native_name: 'Slovenščina' },
- sm: { flag: '🇼🇸', name: 'Samoan', native_name: 'Gagana Samoa' },
- sn: { flag: '🇿🇼', name: 'Shona', native_name: 'chiShona' },
- so: { flag: '🇸🇴', name: 'Somali', native_name: 'Soomaaliga' },
- sr: { flag: '🇷🇸', name: 'Serbian', native_name: 'Српски' },
- ss: { flag: '🇸🇿', name: 'Swati', native_name: 'SiSwati' },
- st: { flag: '🇱🇸', name: 'Southern Sotho', native_name: 'Sesotho' },
- su_id: { flag: '🇮🇩', name: 'Sundanese (Indonesia)', native_name: 'basa sunda' },
- sv: { flag: '🇸🇪', name: 'Swedish', native_name: 'Svenska' },
- th: { flag: '🇹🇭', name: 'Thai', native_name: 'ไทย' },
- tk: { flag: '🇹🇲', name: 'Turkmen', native_name: 'Türkmen' },
- tn: { flag: '🇧🇼', name: 'Tswana', native_name: 'Setswana' },
- to: { flag: '🇹🇴', name: 'Tongan', native_name: 'faka-Tonga' },
- tr: { flag: '🇹🇷', name: 'Turkish', native_name: 'Türkçe' },
- ts: { flag: '🇿🇦', name: 'Tsonga', native_name: 'Xitsonga' },
- ts_zw: { flag: '🇿🇼', name: 'Tsonga (Zimbabwe)', native_name: 'xitsonga' },
- ty: { flag: '🇵🇫', name: 'Tahitian', native_name: 'Reo Tahiti' },
- uk: { flag: '🇺🇦', name: 'Ukrainian', native_name: 'Українська' },
- ur: { flag: '🇵🇰', name: 'Urdu', native_name: 'اردو' },
- uz: { flag: '🇺🇿', name: 'Uzbek', native_name: 'oʻzbek' },
- ve: { flag: '🇿🇦', name: 'Venda', native_name: 'Tshivenda' },
- vi: { flag: '🇻🇳', name: 'Vietnamese', native_name: 'Tiếng Việt' },
- vo: { flag: '🌍', name: 'Volapük', native_name: 'Volapük' },
- wa: { flag: '🇧🇪', name: 'Walloon', native_name: 'walon' },
- xh: { flag: '🇿🇦', name: 'Xhosa', native_name: 'isiXhosa' },
- yi: { flag: '🌍', name: 'Yiddish', native_name: 'ייִדיש' },
- yo: { flag: '🇳🇬', name: 'Yoruba', native_name: 'Yorùbá' },
- zh: { flag: '🇨🇳', name: 'Chinese', native_name: '中文' },
- zh_hk: { flag: '🇭🇰', name: 'Chinese (Hong Kong)', native_name: '中文(香港)' },
- zh_tw: { flag: '🇹🇼', name: 'Chinese (Taiwan)', native_name: '中文(台灣)' },
- zu: { flag: '🇿🇦', name: 'Zulu', native_name: 'isiZulu' },
+LANGUAGE_INFORMATION = {
+ "af": {
+ "flag": "🇿🇦",
+ "name": "Afrikaans",
+ "native_name": "Afrikaans"
+ },
+ "am": {
+ "flag": "🇪🇹",
+ "name": "Amharic",
+ "native_name": "አማርኛ"
+ },
+ "an": {
+ "flag": "🇪🇸",
+ "name": "Aragonese",
+ "native_name": "aragonés"
+ },
+ "ar": {
+ "flag": "🇸🇦",
+ "name": "Arabic",
+ "native_name": "العربية"
+ },
+ "ar_ae": {
+ "flag": "🇦🇪",
+ "name": "Arabic (UAE)",
+ "native_name": "العربية (الإمارات)"
+ },
+ "ar_bh": {
+ "flag": "🇧🇭",
+ "name": "Arabic (Bahrain)",
+ "native_name": "العربية (البحرين)"
+ },
+ "ar_dz": {
+ "flag": "🇩🇿",
+ "name": "Arabic (Algeria)",
+ "native_name": "العربية (الجزائر)"
+ },
+ "ar_eg": {
+ "flag": "🇪🇬",
+ "name": "Arabic (Egypt)",
+ "native_name": "العربية (مصر)"
+ },
+ "ar_iq": {
+ "flag": "🇮🇶",
+ "name": "Arabic (Iraq)",
+ "native_name": "العربية (العراق)"
+ },
+ "ar_jo": {
+ "flag": "🇯🇴",
+ "name": "Arabic (Jordan)",
+ "native_name": "العربية (الأردن)"
+ },
+ "ar_kw": {
+ "flag": "🇰🇼",
+ "name": "Arabic (Kuwait)",
+ "native_name": "العربية (الكويت)"
+ },
+ "ar_lb": {
+ "flag": "🇱🇧",
+ "name": "Arabic (Lebanon)",
+ "native_name": "العربية (لبنان)"
+ },
+ "ar_ly": {
+ "flag": "🇱🇾",
+ "name": "Arabic (Libya)",
+ "native_name": "العربية (ليبيا)"
+ },
+ "ar_ma": {
+ "flag": "🇲🇦",
+ "name": "Arabic (Morocco)",
+ "native_name": "العربية (المغرب)"
+ },
+ "ar_om": {
+ "flag": "🇴🇲",
+ "name": "Arabic (Oman)",
+ "native_name": "العربية (عُمان)"
+ },
+ "ar_qa": {
+ "flag": "🇶🇦",
+ "name": "Arabic (Qatar)",
+ "native_name": "العربية (قطر)"
+ },
+ "ar_sa": {
+ "flag": "🇸🇦",
+ "name": "Arabic (Saudi Arabia)",
+ "native_name": "العربية (السعودية)"
+ },
+ "ar_sd": {
+ "flag": "🇸🇩",
+ "name": "Arabic (Sudan)",
+ "native_name": "العربية (السودان)"
+ },
+ "ar_sy": {
+ "flag": "🇸🇾",
+ "name": "Arabic (Syria)",
+ "native_name": "العربية (سوريا)"
+ },
+ "ar_tn": {
+ "flag": "🇹🇳",
+ "name": "Arabic (Tunisia)",
+ "native_name": "العربية (تونس)"
+ },
+ "ar_ye": {
+ "flag": "🇾🇪",
+ "name": "Arabic (Yemen)",
+ "native_name": "العربية (اليمن)"
+ },
+ "ars_ae": {
+ "flag": "🇦🇪",
+ "name": "Najdi Arabic (UAE)",
+ "native_name": "نَجْدِيّ"
+ },
+ "ars_arab_sa": {
+ "flag": "🇸🇦",
+ "name": "Najdi Arabic (Saudi Arabia, Arabic Script)",
+ "native_name": "نَجْدِيّ"
+ },
+ "ars_sa": {
+ "flag": "🇸🇦",
+ "name": "Najdi Arabic (Saudi Arabia)",
+ "native_name": "نَجْدِيّ"
+ },
+ "as": {
+ "flag": "🇮🇳",
+ "name": "Assamese",
+ "native_name": "অসমীয়া"
+ },
+ "az": {
+ "flag": "🇦🇿",
+ "name": "Azerbaijani",
+ "native_name": "Azərbaycan"
+ },
+ "be": {
+ "flag": "🇧🇾",
+ "name": "Belarusian",
+ "native_name": "Беларуская"
+ },
+ "bg": {
+ "flag": "🇧🇬",
+ "name": "Bulgarian",
+ "native_name": "Български"
+ },
+ "bm": {
+ "flag": "🇲🇱",
+ "name": "Bambara",
+ "native_name": "bamanankan"
+ },
+ "bn": {
+ "flag": "🇧🇩",
+ "name": "Bengali",
+ "native_name": "বাংলা"
+ },
+ "bn_in": {
+ "flag": "🇮🇳",
+ "name": "Bengali (India)",
+ "native_name": "বাংলা (ভারত)"
+ },
+ "br": {
+ "flag": "🏴",
+ "name": "Breton",
+ "native_name": "brezhoneg"
+ },
+ "bs": {
+ "flag": "🇧🇦",
+ "name": "Bosnian",
+ "native_name": "Bosanski"
+ },
+ "ca": {
+ "flag": "🇪🇸",
+ "name": "Catalan",
+ "native_name": "Català"
+ },
+ "crh": {
+ "flag": "🇺🇦",
+ "name": "Crimean Tatar",
+ "native_name": "qırımtatarca"
+ },
+ "cs": {
+ "flag": "🇨🇿",
+ "name": "Czech",
+ "native_name": "Čeština"
+ },
+ "cv": {
+ "flag": "🇷🇺",
+ "name": "Chuvash",
+ "native_name": "чӑваш чӗлхи"
+ },
+ "cy": {
+ "flag": "🏴",
+ "name": "Welsh",
+ "native_name": "Cymraeg"
+ },
+ "da": {
+ "flag": "🇩🇰",
+ "name": "Danish",
+ "native_name": "Dansk"
+ },
+ "de": {
+ "flag": "🇩🇪",
+ "name": "German",
+ "native_name": "Deutsch"
+ },
+ "de_at": {
+ "flag": "🇦🇹",
+ "name": "German (Austria)",
+ "native_name": "Deutsch (Österreich)"
+ },
+ "de_be": {
+ "flag": "🇧🇪",
+ "name": "German (Belgium)",
+ "native_name": "Deutsch (Belgien)"
+ },
+ "de_ch": {
+ "flag": "🇨🇭",
+ "name": "German (Switzerland)",
+ "native_name": "Deutsch (Schweiz)"
+ },
+ "dv": {
+ "flag": "🇲🇻",
+ "name": "Dhivehi",
+ "native_name": "ދިވެހި"
+ },
+ "dz": {
+ "flag": "🇧🇹",
+ "name": "Dzongkha",
+ "native_name": "རྫོང་ཁ"
+ },
+ "el": {
+ "flag": "🇬🇷",
+ "name": "Greek",
+ "native_name": "Ελληνικά"
+ },
+ "en": {
+ "flag": "🇺🇸",
+ "name": "English",
+ "native_name": "English"
+ },
+ "en_au": {
+ "flag": "🇦🇺",
+ "name": "English (Australia)",
+ "native_name": "English (Australia)"
+ },
+ "en_ca": {
+ "flag": "🇨🇦",
+ "name": "English (Canada)",
+ "native_name": "English (Canada)"
+ },
+ "en_gb": {
+ "flag": "🇬🇧",
+ "name": "English (UK)",
+ "native_name": "English (UK)"
+ },
+ "en_ie": {
+ "flag": "🇮🇪",
+ "name": "English (Ireland)",
+ "native_name": "English (Ireland)"
+ },
+ "en_in": {
+ "flag": "🇮🇳",
+ "name": "English (India)",
+ "native_name": "English (India)"
+ },
+ "en_nz": {
+ "flag": "🇳🇿",
+ "name": "English (New Zealand)",
+ "native_name": "English (New Zealand)"
+ },
+ "en_us": {
+ "flag": "🇺🇸",
+ "name": "English (US)",
+ "native_name": "English (US)"
+ },
+ "es": {
+ "flag": "🇪🇸",
+ "name": "Spanish",
+ "native_name": "Español"
+ },
+ "es_ar": {
+ "flag": "🇦🇷",
+ "name": "Spanish (Argentina)",
+ "native_name": "Español (Argentina)"
+ },
+ "es_mx": {
+ "flag": "🇲🇽",
+ "name": "Spanish (Mexico)",
+ "native_name": "Español (México)"
+ },
+ "et": {
+ "flag": "🇪🇪",
+ "name": "Estonian",
+ "native_name": "Eesti"
+ },
+ "fa": {
+ "flag": "🇮🇷",
+ "name": "Persian",
+ "native_name": "فارسی"
+ },
+ "ff": {
+ "flag": "🌍",
+ "name": "Fula",
+ "native_name": "Fulfulde"
+ },
+ "fi": {
+ "flag": "🇫🇮",
+ "name": "Finnish",
+ "native_name": "Suomi"
+ },
+ "fo": {
+ "flag": "🇫🇴",
+ "name": "Faroese",
+ "native_name": "føroyskt"
+ },
+ "fr": {
+ "flag": "🇫🇷",
+ "name": "French",
+ "native_name": "Français"
+ },
+ "fr_ca": {
+ "flag": "🇨🇦",
+ "name": "French (Canada)",
+ "native_name": "Français (Canada)"
+ },
+ "fr_ch": {
+ "flag": "🇨🇭",
+ "name": "French (Switzerland)",
+ "native_name": "Français (Suisse)"
+ },
+ "ga": {
+ "flag": "🇮🇪",
+ "name": "Irish",
+ "native_name": "Gaeilge"
+ },
+ "gl": {
+ "flag": "🇪🇸",
+ "name": "Galician",
+ "native_name": "Galego"
+ },
+ "gn": {
+ "flag": "🇵🇾",
+ "name": "Guarani",
+ "native_name": "Avañe'ẽ"
+ },
+ "gu": {
+ "flag": "🇮🇳",
+ "name": "Gujarati",
+ "native_name": "ગુજરાતી"
+ },
+ "ha": {
+ "flag": "🇳🇬",
+ "name": "Hausa",
+ "native_name": "هَوُسَ"
+ },
+ "he": {
+ "flag": "🇮🇱",
+ "name": "Hebrew",
+ "native_name": "עברית"
+ },
+ "hi": {
+ "flag": "🇮🇳",
+ "name": "Hindi",
+ "native_name": "हिन्दी"
+ },
+ "hr": {
+ "flag": "🇭🇷",
+ "name": "Croatian",
+ "native_name": "Hrvatski"
+ },
+ "ht": {
+ "flag": "🇭🇹",
+ "name": "Haitian Creole",
+ "native_name": "Kreyòl ayisyen"
+ },
+ "hu": {
+ "flag": "🇭🇺",
+ "name": "Hungarian",
+ "native_name": "Magyar"
+ },
+ "id": {
+ "flag": "🇮🇩",
+ "name": "Indonesian",
+ "native_name": "Bahasa Indonesia"
+ },
+ "io": {
+ "flag": "🌍",
+ "name": "Ido",
+ "native_name": "Ido"
+ },
+ "is": {
+ "flag": "🇮🇸",
+ "name": "Icelandic",
+ "native_name": "Íslenska"
+ },
+ "it": {
+ "flag": "🇮🇹",
+ "name": "Italian",
+ "native_name": "Italiano"
+ },
+ "ja": {
+ "flag": "🇯🇵",
+ "name": "Japanese",
+ "native_name": "日本語"
+ },
+ "jv_id": {
+ "flag": "🇮🇩",
+ "name": "Javanese (Indonesia)",
+ "native_name": "basa jawa"
+ },
+ "ka": {
+ "flag": "🇬🇪",
+ "name": "Georgian",
+ "native_name": "ქართული"
+ },
+ "kg": {
+ "flag": "🇨🇬",
+ "name": "Kongo",
+ "native_name": "KiKongo"
+ },
+ "kj": {
+ "flag": "🇳🇦",
+ "name": "Kuanyama",
+ "native_name": "Oshikwanyama"
+ },
+ "kk": {
+ "flag": "🇰🇿",
+ "name": "Kazakh",
+ "native_name": "Қазақ"
+ },
+ "kl": {
+ "flag": "🇬🇱",
+ "name": "Kalaallisut",
+ "native_name": "kalaallisut"
+ },
+ "km": {
+ "flag": "🇰🇭",
+ "name": "Khmer",
+ "native_name": "ខ្មែរ"
+ },
+ "ko": {
+ "flag": "🇰🇷",
+ "name": "Korean",
+ "native_name": "한국어"
+ },
+ "ks": {
+ "flag": "🇮🇳",
+ "name": "Kashmiri",
+ "native_name": "کٲشُر"
+ },
+ "ku": {
+ "flag": "🇮🇶",
+ "name": "Kurdish",
+ "native_name": "Kurdî"
+ },
+ "lo": {
+ "flag": "🇱🇦",
+ "name": "Lao",
+ "native_name": "ລາວ"
+ },
+ "lt": {
+ "flag": "🇱🇹",
+ "name": "Lithuanian",
+ "native_name": "Lietuvių"
+ },
+ "lv": {
+ "flag": "🇱🇻",
+ "name": "Latvian",
+ "native_name": "Latviešu"
+ },
+ "mg": {
+ "flag": "🇲🇬",
+ "name": "Malagasy",
+ "native_name": "Malagasy"
+ },
+ "mg_mg": {
+ "flag": "🇲🇬",
+ "name": "Malagasy (Madagascar)",
+ "native_name": "malagasy"
+ },
+ "mh": {
+ "flag": "🇲🇭",
+ "name": "Marshallese",
+ "native_name": "Kajin M̧ajeļ"
+ },
+ "mk": {
+ "flag": "🇲🇰",
+ "name": "Macedonian",
+ "native_name": "Македонски"
+ },
+ "mn_mn": {
+ "flag": "🇲🇳",
+ "name": "Mongolian (Mongolia)",
+ "native_name": "Монгол хэл"
+ },
+ "mr_in": {
+ "flag": "🇮🇳",
+ "name": "Marathi (India)",
+ "native_name": "मराठी"
+ },
+ "ms": {
+ "flag": "🇲🇾",
+ "name": "Malay",
+ "native_name": "Bahasa Melayu"
+ },
+ "my": {
+ "flag": "🇲🇲",
+ "name": "Burmese",
+ "native_name": "မြန်မာဘာသာ"
+ },
+ "na": {
+ "flag": "🇳🇷",
+ "name": "Nauruan",
+ "native_name": "Dorerin Naoero"
+ },
+ "nb": {
+ "flag": "🇳🇴",
+ "name": "Norwegian Bokmål",
+ "native_name": "Norsk Bokmål"
+ },
+ "ng": {
+ "flag": "🇳🇦",
+ "name": "Ndonga",
+ "native_name": "Oshindonga"
+ },
+ "nl": {
+ "flag": "🇳🇱",
+ "name": "Dutch",
+ "native_name": "Nederlands"
+ },
+ "om": {
+ "flag": "🇪🇹",
+ "name": "Oromo",
+ "native_name": "Afaan Oromoo"
+ },
+ "os": {
+ "flag": "🇷🇺",
+ "name": "Ossetian",
+ "native_name": "ирон æвзаг"
+ },
+ "pl": {
+ "flag": "🇵🇱",
+ "name": "Polish",
+ "native_name": "Polski"
+ },
+ "pt": {
+ "flag": "🇵🇹",
+ "name": "Portuguese",
+ "native_name": "Português"
+ },
+ "pt_br": {
+ "flag": "🇧🇷",
+ "name": "Portuguese (Brazil)",
+ "native_name": "Português (Brasil)"
+ },
+ "qu": {
+ "flag": "🇵🇪",
+ "name": "Quechua",
+ "native_name": "Runa Simi"
+ },
+ "ro": {
+ "flag": "🇷🇴",
+ "name": "Romanian",
+ "native_name": "Română"
+ },
+ "ru": {
+ "flag": "🇷🇺",
+ "name": "Russian",
+ "native_name": "Русский"
+ },
+ "rw": {
+ "flag": "🇷🇼",
+ "name": "Kinyarwanda",
+ "native_name": "Ikinyarwanda"
+ },
+ "sc": {
+ "flag": "🇮🇹",
+ "name": "Sardinian",
+ "native_name": "sardu"
+ },
+ "sg": {
+ "flag": "🇨🇫",
+ "name": "Sango",
+ "native_name": "yângâ tî sängö"
+ },
+ "sk": {
+ "flag": "🇸🇰",
+ "name": "Slovak",
+ "native_name": "Slovenčina"
+ },
+ "sl": {
+ "flag": "🇸🇮",
+ "name": "Slovenian",
+ "native_name": "Slovenščina"
+ },
+ "sm": {
+ "flag": "🇼🇸",
+ "name": "Samoan",
+ "native_name": "Gagana Samoa"
+ },
+ "sn": {
+ "flag": "🇿🇼",
+ "name": "Shona",
+ "native_name": "chiShona"
+ },
+ "so": {
+ "flag": "🇸🇴",
+ "name": "Somali",
+ "native_name": "Soomaaliga"
+ },
+ "sr": {
+ "flag": "🇷🇸",
+ "name": "Serbian",
+ "native_name": "Српски"
+ },
+ "ss": {
+ "flag": "🇸🇿",
+ "name": "Swati",
+ "native_name": "SiSwati"
+ },
+ "st": {
+ "flag": "🇱🇸",
+ "name": "Southern Sotho",
+ "native_name": "Sesotho"
+ },
+ "su_id": {
+ "flag": "🇮🇩",
+ "name": "Sundanese (Indonesia)",
+ "native_name": "basa sunda"
+ },
+ "sv": {
+ "flag": "🇸🇪",
+ "name": "Swedish",
+ "native_name": "Svenska"
+ },
+ "th": {
+ "flag": "🇹🇭",
+ "name": "Thai",
+ "native_name": "ไทย"
+ },
+ "tk": {
+ "flag": "🇹🇲",
+ "name": "Turkmen",
+ "native_name": "Türkmen"
+ },
+ "tn": {
+ "flag": "🇧🇼",
+ "name": "Tswana",
+ "native_name": "Setswana"
+ },
+ "to": {
+ "flag": "🇹🇴",
+ "name": "Tongan",
+ "native_name": "faka-Tonga"
+ },
+ "tr": {
+ "flag": "🇹🇷",
+ "name": "Turkish",
+ "native_name": "Türkçe"
+ },
+ "ts": {
+ "flag": "🇿🇦",
+ "name": "Tsonga",
+ "native_name": "Xitsonga"
+ },
+ "ts_zw": {
+ "flag": "🇿🇼",
+ "name": "Tsonga (Zimbabwe)",
+ "native_name": "xitsonga"
+ },
+ "ty": {
+ "flag": "🇵🇫",
+ "name": "Tahitian",
+ "native_name": "Reo Tahiti"
+ },
+ "uk": {
+ "flag": "🇺🇦",
+ "name": "Ukrainian",
+ "native_name": "Українська"
+ },
+ "ur": {
+ "flag": "🇵🇰",
+ "name": "Urdu",
+ "native_name": "اردو"
+ },
+ "uz": {
+ "flag": "🇺🇿",
+ "name": "Uzbek",
+ "native_name": "oʻzbek"
+ },
+ "ve": {
+ "flag": "🇿🇦",
+ "name": "Venda",
+ "native_name": "Tshivenda"
+ },
+ "vi": {
+ "flag": "🇻🇳",
+ "name": "Vietnamese",
+ "native_name": "Tiếng Việt"
+ },
+ "vo": {
+ "flag": "🌍",
+ "name": "Volapük",
+ "native_name": "Volapük"
+ },
+ "wa": {
+ "flag": "🇧🇪",
+ "name": "Walloon",
+ "native_name": "walon"
+ },
+ "xh": {
+ "flag": "🇿🇦",
+ "name": "Xhosa",
+ "native_name": "isiXhosa"
+ },
+ "yi": {
+ "flag": "🌍",
+ "name": "Yiddish",
+ "native_name": "ייִדיש"
+ },
+ "yo": {
+ "flag": "🇳🇬",
+ "name": "Yoruba",
+ "native_name": "Yorùbá"
+ },
+ "zh": {
+ "flag": "🇨🇳",
+ "name": "Chinese",
+ "native_name": "中文"
+ },
+ "zh_hk": {
+ "flag": "🇭🇰",
+ "name": "Chinese (Hong Kong)",
+ "native_name": "中文(香港)"
+ },
+ "zh_tw": {
+ "flag": "🇹🇼",
+ "name": "Chinese (Taiwan)",
+ "native_name": "中文(台灣)"
+ },
+ "zu": {
+ "flag": "🇿🇦",
+ "name": "Zulu",
+ "native_name": "isiZulu"
+ }
}