Usuari:Coet/mw:altresllengües per noms.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 adding title method to tag, both-Norsk MW bugs  //
//          and alphabetical order of iw by w:ca:User:Pasqual          //
//                                                                     //
/////////////////////////////////////////////////////////////////////////

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
            iwlink = li.getElementsByTagName('a')[0]
            iwlink.innerHTML = fixName(iwlink.innerHTML)
            tr = localToCatalan(iwlink.innerHTML)
            list.push([simplifyChars(iwlink.innerHTML), iwlink.innerHTML, iwlink.href, tr, li_c, li_t]);
        }
        list = list.sort();
        for (var  i = 0; i < list.length; i++){
            li = LangNodes[i]
            li.className = list[i][4]
            li.title = list[i][5]
            iwlink = li.getElementsByTagName('a')[0]
            iwlink.innerHTML = list[i][1];
            iwlink.href = list[i][2];
            iwlink.title = list[i][3];
        }
    }
}
$ (languageReplace)

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

function localToCatalan(localname) {
    switch (localname) {
        case "Acèh": return "acèh"; break;
        case "Afar": return "àfar"; break;
        case "Afrikaans": return "afrikaans"; break;
        case "Akan": return "akan"; break;
        case "Alemannisch": return "alemànic"; break;
        case "Anglo-Saxon": return "anglosaxó"; break;
        case "Aragonés": return "aragonès"; break;
        case "Armãneashce": return "aromanès"; break;
        case "Armâneashti": return "aromanès"; break;
        case "Arpetan": return "arpità"; break;
        case "Asturianu": return "asturià"; break;
        case "Avañe'ẽ": return "guaraní"; break;
        case "Aymar aru": return "aimara"; break;
        case "Aymar": return "aimara"; break;
        case "Azərbaycan": return "azerí"; break;
        case "Bahasa Indonesia": return "indonesi"; break;
        case "Bahasa Melayu": return "malai"; break;
        case "Bamanankan": return "bambara"; break;
        case "Bân-lâm-gú": return "min nan"; break;
        case "Basa Banyumasan": return "banyumasan"; break;
        case "Basa Jawa": return "javanès"; break;
        case "Basa Sunda": return "sundanès"; break;
        case "Bikol Central": return "bikol central"; break;
        case "Bislama": return "bislama"; break;
        case "Boarisch": return "bavar"; break;
        case "Bosanski": return "bosnià"; break;
        case "Brezhoneg": return "bretó"; break;
        case "Cebuano": return "cebuano"; break;
        case "Česky": return "txec"; break;
        case "Chavacano de Zamboanga": return "chavacano de Zamboanga"; break;
        case "Chamoru": return "chamorro"; break;
        case "Chi-Chewa": return "chichewa"; break;
        case "chiShona": return "shona"; break;
        case "chiTumbuka": return "tumbuka"; break;
        case "Choctaw": return "choctaw"; break;
        case "Corsu": return "cors"; break;
        case "(Cuengh)": return "zhuang"; break;
        case "Cymraeg": return "gal·lès"; break;
        case "Dansk": return "danès"; break;
        case "Deitsch": return "alemany de pensilvània"; break;
        case "Deutsch": return "alemany"; break;
        case "Diné bizaad": return "navajo"; break;
        case "Dolnoserbski": return "baix sorbi"; break;
        case "Dorerin Naoero": return "dorerin naorero"; break;
        case "Ebon": return "marshallese"; break;
        case "Eesti": return "estonià"; break;
        case "Ekakairũ Naoero": return "nauruan"; break;
        case "Emilià": return "emilià-romanyol"; break;
        case "English": return "anglès"; break;
        case "Español": return "castellà"; break;
        case "Esperanto": return "esperanto"; break;
        case "Estremeñu": return "extremeny"; break;
        case "Euskara": return "eusquera"; break;
        case "Eʋegbe": return "ewe"; break;
        case "faka-Tonga": return "tongan"; break;
        case "Føroyskt": return "feroès"; break;
        case "Français": return "francès"; break;
        case "Fiji Hindi": return "hindi de Fiji"; break;
        case "Frysk": return "frisó oriental"; break;
        case "Fulfulde": return "peul"; break;
        case "Furlan": return "furlà"; break;
        case "Gaeilge": return "gaèlic irlandès"; break;
        case "Gaelg": return "gaèlic manx"; break;
        case "Gagana Samoa": return "samoà"; break;
        case "Gàidhlig": return "gaèlic escocès"; break;
        case "Galego": return "gallec"; break;
        case "Gĩkũyũ": return "kikuyu"; break;
        case "Hak-kâ-fa": return "xinès hakka"; break;
        case "Hawai`i": return "hawaià"; break;
        case "Hiri Motu": return "hiri motu"; break;
        case "Hornjoserbsce": return "sorbi alt"; break;
        case "Hrvatski": return "croat"; break;
        case "Ido": return "ido"; break;
        case "Igbo": return "igbo"; break;
        case "Ilokano": return "ilokano"; break;
        case "Interlingua": return "interlingua"; break;
        case "Interlingue": return "interlingue"; break;
        case "Iñupiak": return "inupiak"; break;
        case "isiXhosa": return "xhosan"; break;
        case "isiZulu": return "zulu"; break;
        case "Íslenska": return "islandès"; break;
        case "Italiano": return "italià"; break;
        case "Kalaallisut": return "groenlandès"; break;
        case "Kanuri": return "kanuri"; break;
        case "Kapampangan": return "kapampangan"; break;
        case "Kaszëbsczi": return "kaixubi"; break;
        case "Kernowek": return "còrnic"; break;
        case "Kinyarwanda": return "kinyarwanda"; break;
        case "Kirundi": return "kirundi"; break;
        case "Kiswahili": return "swahili"; break;
        case "Kongo": return "congolès"; break;
        case "Kreyòl ayisyen": return "crioll haitià"; break;
        case "Kuanyama": return "kuanyama"; break;
        case "Kurdî / كوردی": return "kurd"; break;
        case "Ladino": return "ladino"; break;
        case "Latina": return "llatí"; break;
        case "Latviešu": return "letó"; break;
        case "lea faka-Tonga": return "tonga"; break;
        case "Lëtzebuergesch": return "luxembourguès"; break;
        case "Lietuvių": return "lituà"; break;
        case "Líguru": return "ligur"; break;
        case "Limburgs": return "limburguès"; break;
        case "Lingála": return "lingala"; break;
        case "Lojban": return "lojban"; break;
        case "Luganda": return "luganda"; break;
        case "Lumbaart": return "llombard"; break;
        case "Magyar": return "hongarès"; break;
        case "Malagasy": return "malgaix"; break;
        case "Malti": return "maltès"; break;
        case "Mìng-dĕ̤ng-ngṳ̄": return "min dong"; break;
        case "Muscogee": return "muscogee"; break;
        case "Myanmasa": return "birmà"; break;
        case "Māori": return "maori"; break;
        case "Na Vosa Vakaviti": return "fijià"; break;
        case "Nāhuatl": return "nahuatl"; break;
        case "Nederlands": return "holandès"; break;
        case "Nedersaksisch": return "baix saxó holandès"; break;
        case "Nēhiyawēwin / ᓀᐦᐃᔭᐍᐏᐣ": return "cree"; break;
        case "Newar / Nepal Bhasa": return "nepalès"; break;
        case "Nnapulitano": return "napolità"; break;
        case "Norfuk / Pitkern": return "norfolk"; break;
        case "Norsk (bokmål)": return "noruec (bokmål)"; break;
        case "Norsk (nynorsk)": return "noruec (nynorsk)"; break;
        case "Nouormand": return "norman"; break;
        case "Novial": return "novial"; break;
        case "O'zbek": return "uzbek"; break;
        case "Occitan": return "occità"; break;
        case "Oromoo": return "oromo"; break;
        case "Oshiwambo": return "ndonga"; break;
        case "Otsiherero": return "herero"; break;
        case "Pangasinan": return "pangasinès"; break;
        case "Papiamentu": return "papiamentu"; break;
        case "Piemontèis": return "piemontès"; break;
        case "Plattdüütsch": return "baix saxó"; break;
        case "Polski": return "polonès"; break;
        case "Português": return "portuguès"; break;
        case "Qaraqalpaqsha": return "karakalpak"; break;
        case "Qırımtatarca": return "tàtar crimeu"; break;
        case "Reo Mā`ohi": return "tahitià"; break;
        case "Ripoarisch": return "ripuari"; break;
        case "Romani": return "romaní"; break;
        case "Română": return "romanès"; break;
        case "Rumantsch": return "romanx"; break;
        case "Runa Simi": return "quítxua"; break;
        case "Sámegiella": return "sami sept."; break;
        case "Sängö": return "sango"; break;
        case "Sardu": return "sard"; break;
        case "Scots": return "escocès"; break;
        case "Seeltersk": return "frisó de Saterland"; break;
        case "seSotho": return "sotho"; break;
        case "Setswana": return "tswana"; break;
        case "Shqip": return "albanès"; break;
        case "Sicilianu": return "sicilià"; break;
        case "Simple English": return "anglès simple"; break;
        case "SiSwati": return "swati"; break;
        case "Slovenčina": return "eslovac"; break;
        case "Slovenščina": return "eslovè"; break;
        case "Ślůnski": return "silesià"; break;
        case "Soomaaliga": return "somalí"; break;
        case "Srpskohrvatski / Српскохрватски": return "serbocroat"; break;
        case "Suomi": return "finès"; break;
        case "Svenska": return "suec"; break;
        case "Tagalog": return "tagalog"; break;
        case "Taqbaylit": return "cabil"; break;
        case "Tarandíne": return "tarantí"; break;
        case "Татарча/Tatarça": return "tàtar"; break;
        case "Tetun": return "tetum"; break;
        case "Tiếng Việt": return "vietnamita"; break;
        case "Tok Pisin": return "tok pisin"; break;
        case "Toki Pona": return "tokipona"; break;
        case "Tsetsêhestâhese": return "cheyenne"; break;
        case "Tshivenda": return "venda"; break;
        case "Türkçe": return "turc"; break;
        case "Türkmençe": return "turkmen"; break;
        case "Twi": return "twi"; break;
        case "Uyghurche‎ / ئۇيغۇرچە": return "uigur"; break;
        case "Vèneto": return "venecià"; break;
        case "Volapük": return "volapük"; break;
        case "Võro": return "voro"; break;
        case "Walon": return "való"; break;
        case "West-Vlams": return "flamenc oriental"; break;
        case "Winaray": return "waray-waray"; break;
        case "Wolof": return "wolof"; break;
        case "Xitsonga": return "tsonga"; break;
        case "Yorùbá": return "ioruba"; break;
        case "Zamboangueño": return "zamboanga chavacano"; break;
        case "Zazaki": return "zazaki"; break;
        case "Zeêuws": return "zelandès"; break;
        case "Žemaitėška": return "samogitià"; break;
        case "Ελληνικά": return "grec"; break;
        case "Ποντιακά": return "pòntic"; break;
        case "Авар": return "àvar"; break;
        case "Аҧсуа": return "abkhaz"; break;
        case "Башҡорт": return "baixkir"; break;
        case "Беларуская (тарашкевіца)": return "bielorús (taraixkevitsa)"; break;
        case "Беларуская": return "bielorús"; break;
        case "Буряад": return "buryat (Russia)"; break;
        case "Български": return "búlgar"; break;
        case "Иронау": return "Osset"; break;
        case "Коми": return "komi"; break;
        case "Кыргызча": return "kirguiz"; break;
        case "Лакку": return "lak"; break;
        case "Македонски": return "macedoni"; break;
        case "Мокшень": return "moksha"; break;
        case "Молдовеняскэ": return "moldau"; break;
        case "Монгол": return "mongol"; break;
        case "Олык Марий": return "txeremís"; break;
        case "Нохчийн": return "txetxè"; break;
        case "Русский": return "rus"; break;
        case "Саха тыла": return "sakha"; break;
        case "Сибирской": return "rus siberià"; break;
        case "Словѣ́ньскъ / ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ": return "antic eslau eclesiàstic"; break;
        case "Српски / Srpski": return "serbi"; break;
        case "Тоҷикӣ": return "tadjik"; break;
        case "Удмурт": return "udmurt"; break;
        case "Українська": return "ucraïnès"; break;
        case "Хальмг": return "kalmyk"; break;
        case "Чăвашла": return "txuvaix"; break;
        case "Эрзянь" : return "erzya"; break;
        case "Қазақша": return "kazakh"; break;
        case "Հայերեն": return "armeni"; break;
        case "ייִדיש": return "jiddisch"; break;
        case "עברית": return "hebreu"; break;
        case "اردو": return "urdú"; break;
        case "العربية": return "àrab"; break;
        case "سنڌي": return "sindhi"; break;
        case "فارسی": return "persa"; break;
        case "مصرى": return "àrab egipci"; break;
        case "مَزِروني": return "mazandarani"; break;
        case "هَوُسَ": return "hausa"; break;
        case "پښتو": return "paixto"; break;
        case "گیلکی": return "gilaki"; break;
        case "پنجابی": return "panjabi occ."; break;
        case "ܐܪܡܝܐ": return "aramaic"; break;
        case "ܕܥܒܪܸܝܛ": return "neoaramaic asiri"; break;
        case "ދިވެހިބަސް": return "divehi"; break;
        case "कश्मीरी - (كشميري)": return "caixmiri"; break;
        case "नेपाल भाषा": return "newar"; break;
        case "नेपाली": return "nepalès"; break;
        case "पािऴ": return "pali"; break;
        case "भोजपुरी": return "bihari"; break;
        case "मराठी": return "maratí"; break;
        case "संस्कृत": return "sànscrit"; break;
        case "हिन्दी": return "hindi"; break;
        case "অসমীয়া": return "assamès"; break;
        case "ইমার ঠার/বিষ্ণুপ্রিয়া মণিপুরী": return "bishnupriya manipuri"; break;
        case "বাংলা": return "bengalí"; break;
        case "ਪੰਜਾਬੀ": return "punjabi"; break;
        case "ગુજરાતી": return "gujarati"; break;
        case "ଓଡ଼ିଆ": return "oriya"; break;
        case "தமிழ்": return "tàmil"; break;
        case "తెలుగు": return "telugu"; break;
        case "ಕನ್ನಡ": return "kannada"; break;
        case "മലയാളം": return "malaialam"; break;
        case "සිංහල": return "sinhalese"; break;
        case "ไทย": return "tailandès"; break;
        case "ລາວ": return "laosià"; break;
        case "ཇོང་ཁ": return "dzongkha"; break;
        case "བོད་ཡིག": return "tibetà"; break;
        case "မြန်မာဘာသာ": return "birmà"; break;
        case "ქართული": return "georgià"; break;
        case "ትግርኛ": return "tigrinya"; break;
        case "አማርኛ": return "amhàric"; break;
        case "ᏣᎳᎩ": return "cherokee"; break;
        case "ᐃᓄᒃᑎᑐᑦ/inuktitut": return "inuktitut"; break;
        case "ភាសាខ្មែរ": return "khmer"; break;
        case "ᨅᨔ ᨕᨘᨁᨗ": return "buginès"; break;
        case "中文": return "xinès"; break;
        case "吴语": return "wu"; break;
        case "文言": return "xinès clàssic"; break;
        case "日本語": return "japonès"; break;
        case "粵語": return "cantonès"; break;
        case "贛語": return "xinès gan"; break;
        case "ꆇꉙ": return "sichuan yi"; break;
        case "한국어": return "coreà"; break;
        case "𐌲𐌿𐍄𐌹𐍃𐌺": return "gòtic"; break;
        default: return localname;
    }
}

function simplifyChars(word){
    //Convert diacritic as a single character. It'll allow to sort alphabetically.
    //Not all chars are converted, only two first ones from the switch statement above is enough. (And only for latin chars.)

    word = word.toLowerCase()
    word = word.replace("á","a") //Sámigiella
    word = word.replace("à","a") //Gàidhlig
    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") //Vènetto
    word = word.replace("ē","e") //Nēhiyawēwin
    word = word.replace("ë","e") //Lëtzebuergesch
    word = word.replace("í","i") //Íslenska
    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
}