Usuari:Coet/scripts/altresllengües.js

De la Viquipèdia, l'enciclopèdia lliure

Nota: Després de desar, heu de netejar la memòria cau del navegador per veure els canvis. En la majoria de navegadors amb Windows o Linux, premeu Ctrl+F5 o bé premeu Shift i cliqueu el botó "Actualitza" (Ctrl i "Actualitza" amb Internet Explorer). Vegeu més informació i instruccions per a cada navegador a Viquipèdia:Neteja de la memòria cau.

/////////////////////////////////////////////////////////////////////////
// Translates the 'in other languages' list in the sidebar to Catalan. //
//               Note: does not translate all languages                //
//                                                                     //
//                                By Tra                               //
//                       (bug fix by Voice_of_All)                     //
//                                                                     //
//       implementation for several variants and alphabetical          //
//                            order by Coet                            //
//                                                                     //
/////////////////////////////////////////////////////////////////////////

if (typeof(veIWlang) === "undefined") veIWlang = "ca"
if (veIWlang != "ca" && veIWlang != "val" && veIWlang != "local") veIWlang = "local"

//wbc-editpage
function languageReplace () {
    if (document.getElementById('p-lang')) {
        var LangNodes=document.getElementById('p-lang').getElementsByTagName('ul')[0].getElementsByTagName('li');
        list = new Array()
        for( var x = 0; x < LangNodes.length; x++ ) {
            li = LangNodes[x]
            li_c = li.className
            li_t = li.title
            link = LangNodes[x].getElementsByTagName('a')[0]
            link.innerHTML = fixName(link.innerHTML)
            tr = localToCatalan(link.innerHTML)
            if (typeof(tr)!='string') tr = tr[veIWlang]
            if (typeof(tr)=='string' && veIWlang == "val") tr = tr.replace("ès","és")
            if (li.className=="uls-p-lang-dummy" || li.className=="wbc-editpage") {
                //modify iws
                last = [simplifyChars(link.innerHTML), link.innerHTML.replace(" ","&nbsp;"), link.href, link.innerHTML, li_c, li_t]
            }else if (veIWlang == "ca" || veIWlang == "val") {
                list.push([simplifyChars(tr), tr, link.href, link.innerHTML, li_c, li_t]);
            } else if (veIWlang == "local") {
                list.push([simplifyChars(link.innerHTML), link.innerHTML, link.href, tr, li_c, li_t]);
            }
        }
        list = list.sort();
        if (typeof(last) != "undefined") {
        	list.push([last[0], last[1], last[2], last[3], last[4], last[5]]) //modify iws
        }
        for (var  i = 0; i < list.length; i++){
            listitem           = LangNodes[i]
            listitem.className = list[i][4]
            listitem.title     = list[i][5]
            link           = listitem.getElementsByTagName('a')[0]
            link.innerHTML = list[i][1];
            link.href      = list[i][2];
            link.title     = list[i][3];
        }
    }
}
$ (languageReplace)

function fixName(name){
    //fix bug Norsk (bokmål) and Norsk (nynorsk) have got chr(8234) and chr(8236) at first place and last one, respectively.
    name=name.replace(String.fromCharCode(8234), "")
    name=name.replace(String.fromCharCode(8236), "")
    return name
}

function localToCatalan(localname) {
    switch (localname) {
       case "Afar": return "àfar"; break;                                           /* aa */
       case "Afrikaans": return "afrikaans"; break;                                 /* af */
       case "Akana": return "àkan"; break;                                          /* ak */
       case "Alemannisch": return "alamànic"; break;                                /* als */
       case "Aragonés": return "aragonès"; break;                                   /* an */
       case "Armãneashce": return "aromanès"; break;                                /* roa-rup */
       case "Arpitan": return "arpità"; break;                                      /* frp */
       case "Asturianu": return "asturià"; break;                                   /* ast */
       case "Avañe'ẽ": return "guaraní"; break;                                     /* gn */
       case "Aymar": return "aimara"; break;                                        /* ay */
       case "Azərbaycanca": return "àzeri"; break;                                  /* az */
       case "Bahasa Banjar": return "banjar"; break;                                /* bjn */ // incert
       case "Bahasa Indonesia": return "indonesi"; break;                           /* id */
       case "Bahasa Melayu": return "malai"; break;                                 /* ms */
       case "Bahsa Acèh": return "axinès"; break;                                   /* ace */
       case "Bamanankan": return "bambara"; break;                                  /* bm */ // incert
       case "Basa Banyumasan": return "banyumasan"; break;                          /* map-bms */ // incert
       case "Basa Jawa": return "javanès"; break;                                   /* jv */
       case "Basa Sunda": return "sondanès"; break;                                 /* su */
       case "Basa Ugi": return "bugui"; break;                                      /* bug */
       case "Bikol": return "bikol"; break;                                         /* bcl */ // incert
       case "Bislama": return "bislama"; break;                                     /* bi */
       case "Boarisch": return "bavarès"; break;                                    /* bar */
       case "Bosanski": return "bosnià"; break;                                     /* bs */
       case "Brezhoneg": return "bretó"; break;                                     /* br */
       case "Bân-lâm-gú": return "min nan"; break;                                  /* zh-min-nan */
       case "Català": return "català"; break;                                       /* ca */
       case "Chamoru": return "chamorro"; break;                                    /* ch */
       case "Chavacano de Zamboanga": return "chavacano de Zamboanga"; break;       /* cbk-zam */ // incert
       case "Chi-Chewa": return "chichewa"; break;                                  /* ny */ // incert, en:Chichewa
       case "Choctaw": return "choctaw"; break;                                     /* cho */
       case "Corsu": return "cors"; break;                                          /* co */
       case "Cuengh": return "llengües zhuang"; break;                              /* za */
       case "Cymraeg": return "gal·lès"; break;                                     /* cy */
       case "Dansk": return "danès"; break;                                         /* da */
       case "Deitsch": return "alemany pennsilvanià"; break;                        /* pdc */
       case "Deutsch": return "alemany"; break;                                     /* de */
       case "Diné bizaad": return "navaho"; break;                                  /* nv */
       case "Dolnoserbski": return "baix sòrab"; break;                             /* dsb */
       case "Dzhudezmo": return "judeocastellà"; break;                             /* lad */
       case "Ladino": return "judeocastellà"; break;                                /* lad */
       case "Ebon": return "marshallese"; break;                                    /* mh */
       case "Eesti": return "estonià"; break;                                       /* et */
       case "Emiliàn e rumagnòl": return "emilià-romanyol"; break;                  /* eml */
       case "Englisc": return "anglosaxons"; break;                                 /* ang */
       case "Ænglisc": return "anglosaxons"; break;                                 /* ang */
       case "English": return "anglès"; break;                                      /* en */
       case "Español": return "castellà"; break;                                    /* es */
       case "Esperanto": return "esperanto"; break;                                 /* eo */
       case "Estremeñu": return "extremeny"; break;                                 /* ext */
       case "Euskara": return "basc"; break;                                        /* eu */
       case "Eʋegbe": return "ewe"; break;                                          /* ee */
       case "Fiji Hindi": return "hindi de fiji"; break;                            /* hif */
       case "Français": return "francès"; break;                                    /* fr */
       case "Frysk": return "frisó oriental"; break;                                /* fy */
       case "Fulfulde": return "ful"; break;                                        /* ff */
       case "Furlan": return "furlà"; break;                                        /* fur */
       case "Føroyskt": return "feroès"; break;                                     /* fo */
       case "Gaeilge": return "gaèlic irlandès"; break;                             /* ga */
       case "Gaelg": return "gaèlic manx"; break;                                   /* gv */
       case "Gagana Samoa": return "samoà"; break;                                  /* sm */
       case "Gagauz": return "gagaús"; break;                                       /* gag */
       case "Galego": return "gallec"; break;                                       /* gl */
       case "Gàidhlig": return "gaèlic escocès"; break;                             /* gd */
       case "Gĩkũyũ": return "kikuiu"; break;                                       /* ki */
       case "Hak-kâ-fa / 客家話": return "hakka"; break;                             /* hak */
       case "Hak-kâ-fa": return "hakka"; break;                                     /* hak */
       case "Hawai`i": return "hawaià"; break;                                      /* haw */
       case "Hiri Motu": return "hirimotu"; break;                                  /* ho */
       case "Hornjoserbsce": return "alt sòrab"; break;                             /* hsb */
       case "Hrvatski": return "croat"; break;                                      /* hr */
       case "Ido": return "ido"; break;                                             /* io */
       case "Igbo": return "igbo"; break;                                           /* ig */
       case "Ikinyarwanda": return "kinyarwanda"; break;                            /* rw */
       case "Kinyarwanda": return "kinyarwanda"; break;                             /* rw */
       case "Ilokano": return "ilocano"; break;                                     /* ilo */
       case "Interlingua": return "interlingua"; break;                             /* ia */
       case "Interlingue": return "interlingue"; break;                             /* ie */
       case "Italiano": return "italià"; break;                                     /* it */
       case "Iñupiak": return "inupiaq"; break;                                     /* ik */
       case "Kalaallisut": return "grenlandès"; break;                              /* kl */
       case "Kanuri": return "kanuri"; break;                                       /* kr */
       case "Kapampangan": return "pampang"; break;                                 /* pam */ //incert
       case "Kaszëbsczi": return "caixubi"; break;                                  /* csb */
       case "Kernewek/Karnuack": return "cornish"; break;                           /* kw */
       case "Kernowek": return "cornish"; break;                                    /* kw */
       case "KiKongo": return "congo"; break;                                       /* kg */
       case "Kirundi": return "rundi"; break;                                       /* rn */
       case "Kiswahili": return "suahili"; break;                                   /* sw */
       case "Krèyol ayisyen": return "crioll haitià"; break;                        /* ht */
       case "Kreyòl ayisyen": return "crioll haitià"; break;                        /* ht */
       case "Kuanyama": return "kwanyama"; break;                                   /* kj */
       case "Kurdî / كوردی": return "kurd"; break;                                  /* ku */
       case "Kurdî": return "kurd"; break;                                          /* ku */
       case "Latgaļu": return "latgalià"; break;                                    /* ltg */
       case "Latina": return "llatí"; break;                                        /* la */
       case "Latviešu": return "letó"; break;                                       /* lv */
       case "Lietuvių": return "lituà"; break;                                      /* lt */
       case "Limburgs": return "limburguès"; break;                                 /* li */
       case "Lingala": return "lingala"; break;                                     /* ln */
       case "Lingála": return "lingala"; break;                                     /* ln */
       case "Lojban": return "lojban"; break;                                       /* jbo */
       case "Luganda": return "ganda"; break;                                       /* lg */
       case "Lumbaart": return "llombard"; break;                                   /* lmo */
       case "Lëtzebuergesch": return "luxemburguès"; break;                         /* lb */
       case "Líguru": return "lígur"; break;                                        /* lij */
       case "Ligure": return "lígur"; break;                                        /* lij */
       case "Magyar": return "hongarès"; break;                                     /* hu */
       case "Malagasy": return "malgaix"; break;                                    /* mg */
       case "Malti": return "maltès"; break;                                        /* mt */
       case "Mirandés": return "mirandès"; break;                                   /* mwl */
       case "Muskogee": return "maskoki"; break;                                    /* mus */ // incert, del castellà
       case "Mìng-dĕ̤ng-ngṳ̄": return "min dong"; break;                              /* cdo */
       case "Māori": return "maori"; break;                                         /* mi */
       case "Na Vosa Vakaviti": return "hindi fijià"; break;                        /* fj */
       case "Nederlands": return "neerlandès"; break;                               /* nl */
       case "Nedersaksisch": return "baix saxó neerlandès"; break;                  /* nds-nl */
       case "Nedersaksies": return "baix saxó neerlandès"; break;                   /* nds-nl */
       case "Nehiyaw": return "cree"; break;                                        /* cr */
       case "Nnapulitano": return "napolità"; break;                                /* nap */
       case "Nordfriisk": return "frisó septentrional"; break;                      /* frr */
       case "Norfuk": return "norfolk"; break;                                      /* pih */
       case "Norsk (Bokmål)": return "bokmål"; break;                               /* no */
       case "Norsk bokmål": return "noruec bokmål"; break;                          /* no */
       case "Nouormand/Normaund": return "norman"; break;                           /* nrm */
       case "Nouormand": return "norman"; break;                                    /* nrm */
       case "Novial": return "novial"; break;                                       /* nov */
       case "Nynorsk": return "nynorsk"; break;                                     /* nn */
       case "Norsk nynorsk": return "noruec nynorsk"; break;                        /* nn */
       case "Nāhuatl": return "nàhuatl"; break;                                     /* nah */
       case "Occitan": return "occità"; break;                                      /* oc */
       case "Oromoo": return "oromo"; break;                                        /* om */
       case "Oshiwambo": return "ndonga"; break;                                    /* ng */ // incert
       case "Otsiherero": return "herero"; break;                                   /* hz */
       case "O‘zbek": return "uzbek"; break;                                        /* uz */
       case "Oʻzbekcha": return "uzbek"; break;                                      /* uz */
       case "Pangasinan": return "pangasinès"; break;                               /* pag */ // incert
       case "Papiamentu": return "papiament"; break;                                /* pap */
       case "Pfälzisch": return "pfälzisch"; break;                                 /* pfl */
       case "Picard": return "picard"; break;                                       /* pcd */
       case "Piemontèis": return "piemontès"; break;                                /* pms */
       case "Plattdüütsch": return "baix alemany"; break;                           /* nds */
       case "Polski": return "polonès"; break;                                      /* pl */
       case "Português": return "portuguès"; break;                                 /* pt */
       case "Qaraqalpaqsha": return "karakalpak"; break;                            /* kaa */
       case "Qırımtatarca": return "tàtar de Crimea"; break;                        /* crh */
       case "Reo Mā`ohi": return "tahitià"; break;                                  /* ty */
       case "Ripoarisch": return "ripuarisch"; break;                               /* ksh */
       case "Română": return "romanès"; break;                                      /* ro */
       case "Rumantsch": return "romanx"; break;                                    /* rm */
       case "Runa Simi": return "quítxua"; break;                                   /* qu */
       case "Sardu": return "sard"; break;                                          /* sc */
       case "Scots": return "scots"; break;                                         /* sco */
       case "Seeltersk": return "frisó oriental"; break;                            /* stq */
       case "Sesotho sa Leboa": return "sotho sa leboa"; break;                     /* nso */ // incert
       case "Sesotho": return "sotho"; break;                                       /* st */ // incert
       case "Setswana": return "tswana"; break;                                     /* tn */
       case "Shqip": return "albanès"; break;                                       /* sq */
       case "SiSwati": return "swazi"; break;                                       /* ss */ // incert suazi
       case "Sicilianu": return "sicilià"; break;                                   /* scn */
       case "Simple English": return "anglès simple"; break;                        /* simple */
       case "Sinugboanong Binisaya": return "cebuà"; break;                         /* ceb */
       case "Slovenčina": return "eslovac"; break;                                  /* sk */
       case "Slovenščina": return "eslovè"; break;                                  /* sl */
       case "Soomaaliga": return "somali"; break;                                   /* so */
       case "Soranî / کوردی": return "sorani"; break;                               /* ckb */ // incert
       case "کوردی": return "sorani"; break;                                        /* ckb */ // incert
       case "Sranantongo": return "sranan"; break;                                  /* srn */ // incert
       case "Srpskohrvatski / Српскохрватски": return "serbocroat"; break;          /* sh */
       case "Srpskohrvatski / српскохрватски": return "serbocroat"; break;          /* sh */
       case "Suomi": return "finès"; break;                                         /* fi */
       case "Svenska": return "suec"; break;                                        /* sv */
       case "Sámegiella": return "sami septentrional"; break;                       /* se */
       case "Sängö": return "sängö"; break;                                         /* sg */ // incert
       case "Tagalog": return "tagal"; break;                                       /* tl */
       case "Taqbaylit": return "cabil"; break;                                     /* kab */
       case "Tarandíne": return "tarentí"; break;                                   /* roa-tara */
       case "Tatarça / Татарча": return "tàtar"; break;                             /* tt */
       case "Татарча/tatarça": return "tàtar"; break;                               /* tt */
       case "Tetun": return "tetum"; break;                                         /* tet */
       case "Tiếng Việt": return "vietnamita"; break;                               /* vi */
       case "Tok Pisin": return "tok pisin"; break;                                 /* tpi */
       case "Tsetsêhestâhese": return "xeiene"; break;                              /* chy */
       case "Tshivenda": return "venda"; break;                                     /* ve */
       case "Twi": return "àkan"; break;                                            /* tw */
       case "Türkçe": return "turc"; break;                                         /* tr */
       case "Vepsän": return "vepses"; break;                                       /* vep */
       case "Vepsän kel’": return "vepses"; break;                                  /* vep */
       case "Volapük": return "volapük"; break;                                     /* vo */
       case "Vèneto": return "vènet"; break;                                        /* vec */
       case "Võro": return "voro"; break;                                           /* fiu-vro */
       case "Walon": return "való"; break;                                          /* wa */
       case "West-Vlams": return "flamenc occidental"; break;                       /* vls */
       case "Winaray": return "winaray"; break;                                     /* war */ // incert
       case "Wolof": return "wòlof"; break;                                         /* wo */
       case "Xitsonga": return "tsonga"; break;                                     /* ts */
       case "Yorùbá": return "ioruba"; break;                                       /* yo */
       case "Zazaki": return "zazaqui"; break;                                      /* diq */
       case "Zeêuws": return "zelandès"; break;                                     /* zea */
       case "chiShona": return "xona"; break;                                       /* sn */
       case "chiTumbuka": return "tumbuka"; break;                                  /* tum */ // incert
       case "dorerin Naoero": return "nauruà"; break;                               /* na */
       case "faka Tonga": return "tongalès"; break;                                 /* to */
       case "isiXhosa": return "xosa"; break;                                       /* xh */
       case "IsiXhosa": return "xosa"; break;                                       /* xh */
       case "isiZulu": return "zulu"; break;                                        /* zu */
       case "IsiZulu": return "zulu"; break;                                        /* zu */
       case "romani - रोमानी": return "romaní"; break;                                /* rmy */
       case "Íslenska": return "islandès"; break;                                   /* is */
       case "Čeština": return "txec"; break;                                        /* cs */
       case "Česky": return "txec"; break;                                          /* cs */
       case "Ślůnski": return "silesià"; break;                                     /* szl */
       case "Žemaitėška": return "samogitià"; break;                                /* bat-smg */ // incert
       case "Ελληνικά": return "grec"; break;                                       /* el */
       case "Ποντιακά": return "pòntic"; break;                                     /* pnt */ // pòntic
       case "Авар": return "àvar"; break;                                           /* av */
       case "Адыгэбзэ (Adighabze)": return "kabardí"; break;                        /* kbd */
       case "Адыгэбзэ": return "kabardí"; break;                                    /* kbd */
       case "Аҧсуа": return "abkhaz"; break;                                        /* ab */
       case "Башҡорт": return "baixkir"; break;                                     /* ba */
       case "Беларуская (тарашкевіца)": return "bielorús taraixkievitsa"; break;    /* be-x-old */ // incert
       case "Беларуская (тарашкевіца)‎": return "bielorús taraixkievitsa"; break;    /* be-x-old */ // incert
       case "Беларуская": return "bielorús"; break;                                 /* be */
       case "Буряад": return "buriat"; break;                                       /* bxr */
       case "Български": return "búlgar"; break;                                    /* bg */
       case "Иронау": return "osseta"; break;                                       /* os */
       case "Ирон": return "osseta"; break;                                         /* os */
       case "Коми": return "komi"; break;                                           /* kv */
       case "Къарачай-Малкъар (Qarachay-Malqar)": return "karatxai-balkar"; break;  /* krc */
       case "Къарачай-малкъар": return "karatxai-balkar"; break;                    /* krc */
       case "Кыргызча": return "kirguís"; break;                                    /* ky */
       case "Кырык Мары (Kyryk Mary) ": return "mari de les colines"; break;        /* mrj */ // incert, en:Hill Mari
       case "Лакку": return "lak"; break;                                           /* lbe */
       case "Лезги чІал (Lezgi č’al)": return "lesguià"; break;                     /* lez */
       case "Македонски": return "macedònic"; break;                                /* mk */
       case "Мокшень (Mokshanj Kälj)": return "mokxa"; break;                       /* mdf */ //incert
       case "Мокшень": return "mokxa"; break;                                       /* mdf */ //incert
       case "Молдовеняскэ": return "moldau"; break;                                 /* mo */
       case "Монгол": return "mongol"; break;                                       /* mn */
       case "Нохчийн": return "txetxè"; break;                                      /* ce */
       case "Олык Марий (Olyk Marij)": return "mari"; break;                        /* mhr */ // incert, en:Meadow Mari
       case "Олык марий": return "mari"; break;                                     /* mhr */ // incert, en:Meadow Mari
       case "Перем Коми (Perem Komi)": return "komi-permiac"; break;      /* koi */
       case "Перем Коми": return "komi-permiac"; break;                   /* koi */
       case "Русский": return "rus"; break;                                         /* ru */
       case "Саха тыла (Saxa Tyla)": return "iacut"; break;                         /* sah */ 
       case "Саха тыла": return "iacut"; break;                                     /* sah */ 
       case "Словѣньскъ": return "antic eslau"; break;                              /* cu */
       case "Српски / Srpski": return "serbi"; break;                               /* sr */
       case "Српски / srpski": return "serbi"; break;                               /* sr */
       case "Тоҷикӣ": return "tadjik"; break;                                       /* tg */
       case "Удмурт кыл": return "udmurt"; break;                                   /* udm */
       case "Українська": return "ucraïnès"; break;                                 /* uk */
       case "Хальмг": return "calmuc"; break;                                       /* xal */
       case "Чăваш": return "txuvaix"; break;                                       /* cv */
       case "Чӑвашла": return "txuvaix"; break;                                     /* cv */
       case "Эрзянь (Erzjanj Kelj)": return "erzya"; break;                         /* myv */
       case "русиньскый язык": return "rutè"; break;                                /* rue */
       case "Русиньскый": return "rutè"; break;                                     /* rue */
       case "Қазақша": return "kazakh"; break;                                      /* kk */
       case "Հայերեն": return "armeni"; break;                                       /* hy */
       case "ייִדיש": return "jiddisch"; break;                                      /* yi */
       case "עברית": return "hebreu"; break;                                        /* he */
       case "ئۇيغۇر تىلى": return "uigur"; break;                                   /* ug */
       case "ئۇيغۇرچە / Uyghurche": return "uigur"; break;                          /* ug */
       case "اردو": return "urdú"; break;                                           /* ur */
       case "العربية": return "àrab"; break;                                        /* ar */
       case "تركمن / Туркмен": return "turcman"; break;                             /* tk */
       case "سنڌي، سندھی ، सिन्ध": return "sindhi"; break;                            /* sd */
       case "سنڌي": return "sindhi"; break;                                         /* sd */
       case "شاہ مکھی پنجابی (Shāhmukhī Pañjābī)": return "panjabi"; break;          /* pnb */
       case "پنجابی": return "panjabi"; break;                                      /* pnb */
       case "فارسی": return "pèrsia"; break;                                        /* fa */
       case "مصرى (Maṣrī)": return "àrab egipci"; break;                            /* arz */
       case "مصرى": return "àrab egipci"; break;                                    /* arz */
       case "مَزِروني": return "mazanderani"; break;                                  /* mzn */
       case "هَوُسَ": return "haussa"; break;                                          /* ha */
       case "پښتو": return "paixtu"; break;                                         /* ps */
       case "گیلکی": return "gilaki"; break;                                        /* glk */
       case "ܐܪܡܝܐ": return "neoarameu assiri"; break;                               /* arc */ // incert
       case "ދިވެހިބަސް": return "divehi"; break;                                        /* dv */
       case "कश्मीरी / كشميري": return "caixmiri"; break;                              /* ks */
       case "कॉशुर / کٲشُر": return "caixmiri"; break;                                 /* ks */
       case "नेपाल भाषा": return "newar"; break;                                      /* new */ // incert
       case "नेपाली": return "nepalès"; break;                                        /* ne */
       case "पाऴि": return "pali"; break;                                            /* pi */
       case "भोजपुरी": return "bihari"; break;                                        /* bh */
       case "मराठी": return "marathi"; break;                                        /* mr */
       case "संस्कृतम्": return "sànscrit"; break;                                     /* sa */
       case "हिन्दी": return "hindi"; break;                                          /* hi */
       case "অসমীয়া": return "assamès"; break;                                        /* as */
       case "ইমার ঠার/বিষ্ণুপ্রিয়া মণিপুরী": return "bixnupria manipuri"; break;                  /* bpy */ // en:Bishnupriya Manipuri
       case "বিষ্ণুপ্রিয়া মণিপুরী": return "bixnupria manipuri"; break;                        /* bpy */ // en:Bishnupriya Manipuri
       case "বাংলা": return "bengalí"; break;                                          /* bn */
       case "ਪੰਜਾਬੀ": return "panjabi"; break;                                        /* pa */
       case "ગુજરાતી": return "gujarati"; break;                                     /* gu */
       case "ଓଡ଼ିଆ": return "oriya"; break;                                           /* or */
       case "தமிழ்": return "tamil"; break;                                         /* ta */
       case "తెలుగు": return "telugu"; break;                                        /* te */
       case "ಕನ್ನಡ": return "kanara"; break;                                         /* kn */
       case "മലയാളം": return "malaiàlam"; break;                                    /* ml */
       case "සිංහල": return "singalès"; break;                                   /* si */
       case "ไทย": return "thai"; break;                                            /* th */
       case "ລາວ": return "laosià"; break;                                          /* lo */
       case "ཇོང་ཁ": return "dzongkha"; break;                                      /* dz */
       case "བོད་སྐད": return "tibetà"; break;                                      /* bo */
       case "བོད་ཡིག": return "tibetà"; break;                                      /* bo */
       case "မြန်မာဘာသာ": return "birmà"; break;                                    /* my */
       case "მარგალური (Margaluri)": return "mingrelià"; break;                     /* xmf */
       case "ქართული": return "georgià"; break;                                    /* ka */
       case "ትግርኛ": return "tigrinya"; break;                                       /* ti */
       case "አማርኛ": return "amhàric"; break;                                        /* am */
       case "ᏣᎳᎩ": return "cherokee"; break;                                       /* chr */
       case "ᐃᓄᒃᑎᑐᑦ": return "inuktitut"; break;                                    /* iu */
       case "ᐃᓄᒃᑎᑐᑦ/inuktitut": return "inuktitut"; break;                          /* iu */
       case "ភាសាខ្មែរ": return "khmer"; break;                              /* km */
       case "中文": return "xinès"; break;                                           /* zh */
       case "古文 / 文言文": return "xinès clàssic"; break;                           /* zh-classical */
       case "吴语": return "xinès wu"; break;                                        /* wuu */ // incert
       case "日本語": return "japonès"; break;                                       /* ja */
       case "粵語": return "cantonès"; break;                                        /* zh-yue */
       case "贛語": return "xinès gan"; break;                                       /* gan */ // incert
       case "ꆇꉙ": return "xinès yi"; break;                                         /* ii */ // incert, en:Sichuan Yi
       case "한국어": return "coreà"; break;                                         /* ko */
       case "𐌲𐌿𐍄𐌹𐍃𐌺": return "gòtic"; break;                                       /* got */
       default: return localname;
       }
}

function simplifyChars(word){
    //Convert diacritic as a single character. It allows to sort alphabetically.

    //simplify Catalan diacritics
    word = word.toLowerCase()
    word = word.replace("·","")
    word = word.replace("à","a")
    word = word.replace("é","e")
    word = word.replace("è","e")
    word = word.replace("í","i")
    word = word.replace("ï","i")
    word = word.replace("ó","o")
    word = word.replace("ò","o")
    word = word.replace("ú","u")
    word = word.replace("ü","u")
    word = word.replace("ç","c")

    //Not all chars are converted, only two first ones from the switch statement cases above. (And only for latin chars.)
    word = word.replace("á","a") //Sámigiella
    word = word.replace("ä","a") //Sängö
    word = word.replace("ā","a") //Māori
    word = word.replace("â","a") //Bân-lâm-gú
    word = word.replace("č","c") //Česky
    word = word.replace("ē","e") //Nēhiyawēwin
    word = word.replace("ë","e") //Lëtzebuergesch
    word = word.replace("ì","i") //Mìng-dĕ̤ng-ngṳ̄
    word = word.replace("ĩ","i") //Gĩkũyũ
    word = word.replace("ı","i") //Qırımtatarca
    word = word.replace("ñ","n") //Iñupiak
    word = word.replace("õ","o") //Võro
    word = word.replace("ø","o") //Føroyskt
    word = word.replace("ś","s") //Ślůnski
    word = word.replace("ü","u") //Türkçe
    word = word.replace("ʋ","u") //Eʋegbe
    word = word.replace("ž","z") //Žemaitėška
    word = word.replace("'","")  //O'zkek
    return word
}