Aller au contenu

Module:Langue/Data

Cette page fait l’objet d’une mesure de semi-protection étendue.
Une page de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 26 juillet 2013 à 19:27 et modifiée en dernier par Zebulon84 (discuter | contributions). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

 Documentation[voir] [modifier] [historique] [purger]


Ce module est une base de données de langues destinée à être chargé par mw.loadData.

Avertissements

Attention à la syntaxe lors de la modification de ces données : cette page est utilisée par un programme informatique qui n'accepte pas qu'une virgule soit absente. Seules possibilités :

  • les données saisies peuvent être entourées de guillemets doubles (") ou simples (') — mais pas de guillemets français («  »)
  • des espaces peuvent être ajoutées pour améliorer la lisibilité.

Avant d'ajouter une langue, vérifier qu'elle n'est pas déjà liée à un autre code dans la liste.

Pour rechercher le code approprié :

  • obtenir le nom de la langue en anglais (par exemple grâce au lien interlangue sur l'article de la langue) ;
  • rechercher celui-ci dans la liste complète des codes IETF du registre tenu à jour par l'IANA (voir également Choosing a Language Tag sur w3.org) ;
  • si la langue ne possède pas de code IETF, elle ne doit pas figurer dans cette base.

La liste complète des langues prises en charge se trouve sur la page Module:Langue/Liste des langues.

Structure du fichier

Pour chaque code IETF, il y a une ligne de ce type :

<code IETF> = { "<nom de la langue en français>", "<autre nom>" },

Si le code IETF contient des tirets, il faut l'entourer de guillemets et de crochets. Il peut y avoir plusieurs autres noms ou aucun, chacun entre guillemets et séparé des autres par des virgules. Ces noms seront utilisés par le modèle {{code langue}} pour retrouver un code à partir du nom de la langue, ils doivent donc être uniques.

Exemples :

  • français, code IETF « fr »
    fr = {"français"},
  • finnois, code IETF « fi »
    fi = { "finnois", "finlandais", "finnish" },
  • anglais britannique, code IETF « en-GB »
    ["en-gb"] = {"anglais britannique"},

Cette syntaxe est complétée par des options, séparées par une virgule :

  • Si la page Wikipédia à propos de cette langue ne porte pas le nom de la langue, on ajoute une donnée « page = "<page wikipédia de cette langue>" »
  • Si la langue s'écrit de droite à gauche, on ajoute une donnée « rtl = true » (rtl pour right to left, pas de guillemets autour de true)
  • Si la langue est une langue des signes, on ajoute une donnée « signe = true » (pas de guillemets autour de true)
  • Si le code n'est pas un code IETF valide, mais qu'il est ajouté pour éviter les erreurs de saisie, on ajoute « invalide = "<code valide>" », ce qui permet la catégorisation des pages utilisant ce code.

Exemples :

  • corse
    co = {"corse", page = "Corse (langue)"},
  • arabe, qui s'écrit de droite à gauche
    ar = {"arabe", rtl = true},
  • japonais, IETF « ja » mais souvent écrit avec le code ISO 3166-1 du Japon « JP »
    ja = {"japonais"},
    jp = {"japonais", invalide = "ja"},
    

La liste est triée par ordre alphabétique des codes IETF.

Utilisation dans un module Lua

Ce module exporte pour chaque nom de langue, indexé par son nom en français ou son code IETF en minuscule, une table avec les élément suivants :

  • code : code IETF de la langue ;
  • nom : nom complet, en français, de cette langue ;
  • page : nom de la page Wikipédia de cette langue, uniquement si celle-ci est différente du nom, nil dans les autres cas ;
  • rtl : booléen égal à true si cette langue s'écrit de droite à gauche (right to left), nil dans les autres cas ;
  • signe : booléen égal à true si cette langue est une langue des signes, nil dans les autres cas ;
  • invalide : booléen égal à true si ce code n'est pas un code IETF valide, nil dans les autres cas.
local datalangue = {

    dataCodeLangue = {
        af = 'af',
        afrikaans = 'af',
        ar = 'ar',
        arabe = 'ar',
        ber = 'ber',
        ["berbère"] = 'ber',
        bg = 'bg',
        bulgare = 'bg',
        bn = 'bn',
        bengali = 'bn',
        br = 'br',
        breton = 'br',
        ca = 'ca',
        catalan = 'ca',
        co = 'co',
        corse = 'co',
        cs = 'cs',
        ["tchèque"] = 'cs',
        cy = 'cy',
        gallois = 'cy',
        da = 'da',
        danois = 'da',
        de = 'de',
        allemand = 'de',
        ["de+fr"] = 'de+fr',
        ["fr+de"] = 'de+fr',
        ["allemand et français"] = 'de+fr',
        ["français et allemand"] = 'de+fr',
        dz = 'dz',
        dzongkha = 'dz',
        el = 'el ',
        gr = 'el',
        ["grec moderne"] = 'el',
        grec = 'el',
        en = 'en',
        anglais = 'en',
        ["en+fr"] = 'en',
        ["fr+en"] = 'en',
        ["anglais et français"] = 'en',
        ["français et anglais"] = 'en',
        eo = 'eo',
        ["espéranto"] = 'eo',
        es = 'es',
        espagnol = 'es',
        et = 'et',
        estonien = 'et',
        eu = 'eu',
        basque = 'eu',
        fa = 'fa',
        persan = 'fa',
        fi = 'fi',
        finnois = 'fi',
        finlandais = 'fi',
        fr = 'fr',
        ["français"] = 'fr',
        ["française"] = 'fr',
        ["fr+nl"] = 'fr+nl',
        ["nl+fr"] = 'fr+nl',
        ["français et néerlandais"] = 'fr+nl',
        ["néerlandais et français"] = 'fr+nl',
        fo = 'fo',
        ["féroïen"] = 'fo',
        ["féringien"] = 'fo',
        ga = 'ga',
        irlandais = 'ga',
        ["gaélique irlandais"] = 'ga',
        gd = 'gd',
        ["écossais"] = 'gd',
        ["gaélique écossais"] = 'gd',
        gl = 'gl',
        galicien = 'gl',
        grc = 'grc',
        ["grec ancien"] = 'grc',
        gv = 'gv',
        mannois = 'gv',
        manxois = 'gv',
        manx = 'gv',
        he = 'he',
        ["hébreu"] = 'he',
        hi = 'hi',
        hindi = 'hi',
        hr = 'hr',
        croate = 'hr',
        hu = 'hu',
        hongrois = 'hu',
        hy = 'hy',
        ["arménien"] = 'hy',
        id = 'id',
        ["indonésien"] = 'id',
        is = 'is',
        islandais = 'is',
        it = 'it',
        italien = 'it',
        ja = 'ja',
        jp = 'ja',
        japonais = 'ja',
        jv = 'jv',
        javanais = 'jv',
        ka = 'ka',
        ["géorgien"] = 'ka',
        kab = 'kab',
        kabyle = 'kab',
        ko = 'ko',
        ["coréen"] = 'ko',
        ku = 'ku',
        kurde = 'ku',
        la = 'la',
        lat = 'la',
        latin = 'la',
        lb = 'lb',
        lu = 'lb',
        luxembourgeois = 'lb',
        lt = 'lt',
        lituanien = 'lt',
        lv = 'lv',
        letton = 'lv',
        mk = 'mk',
        ["macédonien"] = 'mk',
        mn = 'mn',
        mongol = 'mn',
        mr = 'mr',
        marathi = 'mr',
        ["marâthî"] = 'mr',
        ["marāthī"] = 'mr',
        marathe = 'mr',
        ms = 'ms',
        malais = 'ms',
        mt = 'mt',
        maltais = 'mt',
        mul = 'mul',
        multilangue = 'mul',
        my = 'my',
        birman = 'my',
        nah = 'nah',
        nahuatl = 'nah',
        nb = 'nb',
        ["bokmål"] = 'nb',
        ["norvégien classique"] = 'nb',
        ne = 'ne',
        ["népalais"] = 'ne',
        nl = 'nl',
        ["néerlandais"] = 'nl',
        nn = 'nn',
        nynorsk = 'nn',
        no = 'no',
        ["norvégien"] = 'no',
        non = 'non',
        ["vieux norrois"] = 'non',
        norrois = 'non',
        oc = 'oc',
        oci = 'oc',
        occitan = 'oc',
        pa = 'pa',
        panjabi = 'pa',
        ["panjābī"] = 'pa',
        penjabi = 'pa',
        ["penjābī"] = 'pa',
        pl = 'pl',
        polonais = 'pl',
        pt = 'pt',
        portugais = 'pt',
        ro = 'ro',
        roumain = 'ro',
        ru = 'ru',
        russe = 'ru',
        sco = 'sco',
        scots = 'sco',
        sk = 'sk',
        slovaque = 'sk',
        sq = 'sq',
        albanais = 'sq',
        sr = 'sr',
        serbe = 'sr',
        sv = 'sv',
        ["suédois"] = 'sv',
        ta = 'ta',
        tamoul = 'ta',
        te = 'te',
        ["télougou"] = 'te',
        th = 'th',
        ["thaï"] = 'th',
        tr = 'tr',
        turc = 'tr',
        ur = 'ur',
        ourdou = 'ur',
        vi = 'vi',
        vietnamien = 'vi',
        wuu = 'wuu',
        wu = 'wuu',
        yi = 'yi',
        yiddish = 'yi',
        zh = 'zh',
        chinois = 'zh',
        ["mandarin standard"] = 'zh',
        cantonais = 'zh',
        hui = 'zh',
        ["zh-Hans"] = 'zh-Hans',
        ["chinois simplifié"] = 'zh-Hans',
        ["zh-Hant"] = 'zh-Hant',
        ["chinois traditionnel"] = 'zh-Hant'
    },
 
    dataCodeInvalide = { '', 'lat', 'mul', 'und', 'gr', 'gr-Latn', 'gr-latn', 'lu', 'jp', 'dk', 'oci' },
 
    dataNomLangue = {
        aa = 'Afar (langue){{!}}afar',
        ab = 'abkhaze',
        af = 'afrikaans',
        ak = 'Akan (langue){{!}}akan',
        aln = 'guègue',
        als = 'tosque',
        am = 'amharique',
        an = 'aragonais',
        ang = 'Vieil anglais{{!}}anglo-saxon',
        ar = 'arabe',
        arc = 'araméen',
        as = 'assamais',
        ast = 'asturien',
        av = 'avar',
        ay = 'aymara',
        az = 'azéri',
        ba = 'bachkir',
        ['be-x-old'] = 'biélorusse',
        be = 'biélorusse',
        ber = 'Langues berbères{{!}}berbère',
        bg = 'bulgare',
        bh = 'bhodjpouri',
        bi = 'bichelamar',
        bm = 'bambara',
        bn = 'bengali',
        bo = 'tibétain',
        br = 'breton',
        bs = 'bosnien',
        by = 'bavarois',
        ca = 'catalan',
        ce = 'tchétchène',
        ceb = 'cebuano',
        cg = 'monténégrin',
        ch = 'chamorro',
        cho = 'Choctaw (langue){{!}}choctaw',
        chy = 'Cheyenne (langue){{!}}cheyenne',
        ckt = 'tchouktche',
        co = 'Corse (langue){{!}}corse',
        cri = 'Cri (langue){{!}}cri',
        crh = 'tatar de Crimée',
        cs = 'tchèque',
        csb = 'cachoube',
        cv = 'tchouvache',
        cy = 'gallois',
        da = 'danois',
        de = 'allemand',
        dsb = 'bas-sorabe',
        dv = 'divehi',
        dz = 'dzongkha',
        ee = 'Ewe (langue){{!}}ewe',
        el = 'grec moderne',
        en = 'anglais',
        eo = 'espéranto',
        er = 'europanto',
        es = 'espagnol',
        et = 'estonien',
        eu = 'basque',
        ext = 'estrémègne',
        fa = 'persan',
        ff = 'peul',
        fi = 'finnois',
        fil = 'filipino',
        ['fiu-vro'] = 'võro',
        fj = 'fidjien',
        fo = 'féroïen',
        fr = 'français',
        frp = 'francoprovençal',
        fur = 'frioulan',
        fy = 'frison',
        ga = 'irlandais',
        gal = 'gallo',
        gd = 'gaélique écossais',
        gil = 'gilbertin',
        gl = 'galicien',
        gmy = 'mycénien',
        gn = 'Guarani (langue){{!}}guarani',
        grc = 'grec ancien',
        gu = 'gujarati',
        gv = 'mannois',
        ha = 'haoussa',
        haw = 'hawaïen',
        he = 'hébreu',
        hess = 'hessois',
        hi = 'hindi',
        hr = 'croate',
        hsb = 'haut-sorabe',
        ht = 'haïtien',
        hu = 'hongrois',
        hwc = 'créole hawaïen',
        hy = 'arménien',
        ia = 'interlingua',
        id = 'indonésien',
        ie = 'interlingue',
        ilo = 'ilocano',
        io = 'ido',
        is = 'islandais',
        it = 'italien',
        ja = 'japonais',
        jbo = 'lojban',
        jv = 'javanais',
        ka = 'géorgien',
        kaa = 'karakalpak',
        kab = 'kabyle',
        ke = 'koinè',
        kin = 'kinyarwanda',
        kk = 'kazakh',
        kn = 'kannada',
        ko = 'coréen',
        co = 'coréen',
        krc = 'karatchaï-balkar',
        krl = 'carélien',
        ksh = 'francique ripuaire',
        ku = 'kurde',
        kv = 'Komi (langue){{!}}komi',
        kw = 'cornique',
        ky = 'Kirghize (langue){{!}}kirghize',
        la = 'latin',
        lad = 'judéo-espagnol',
        lb = 'luxembourgeois',
        lfn = 'lingua franca nova',
        li = 'limbourgeois',
        lld = 'ladin',
        lmo = 'Lombard (langue){{!}}lombard',
        ln = 'lingala',
        lt = 'lituanien',
        lv = 'letton',
        lzz = 'laze',
        mg = 'malgache',
        mi = 'Maori de Nouvelle-Zélande{{!}}maori',
        mk = 'macédonien',
        ml = 'malayalam',
        mn = 'mongol',
        ['mn-Cyrl'] = 'mongol{{&&}} {{&}}cyrillique',
        ['mn-Latn'] = 'mongol{{&&}} {{&}}romanisé',
        ['mn-Mong'] = 'mongol{{&&}} en {{&}}écriture mongole',
        mo = 'moldave',
        mr = 'Marathi (langue){{!}}marathi',
        ms = 'Malais (langue){{!}}malais',
        mt = 'maltais',
        mwl = 'mirandais',
        my = 'Birman (langue){{!}}birman',
        na = 'nauruan',
        nah = 'nahuatl',
        nap = 'napolitain',
        nds = 'bas allemand',
        ['nds-nl'] = 'bas-saxon néerlandais',
        ne = 'népalais',
        nl = 'néerlandais',
        nn = 'nynorsk',
        no = 'norvégien',
        non = 'vieux norrois',
        nrm = 'normand',
        oc = 'occitan',
        oci = 'occitan',
        ofr = 'francique oriental',
        ['or'] = 'oriya',
        os = 'ossète',
        pa = 'panjābī',
        pap = 'papiamento',
        pcd = 'picard',
        pi = 'pali',
        pl = 'polonais',
        pms = 'piémontais',
        ps = 'pachto',
        pt = 'portugais',
        qu = 'quechua',
        rde = 'allemand de la Ruhr',
        rm = 'romanche',
        ro = 'roumain',
        ru = 'russe',
        rw = 'kinyarwanda',
        sa = 'sanskrit',
        sah = 'iakoute',
        srd = 'sarde',
        sc = 'sarde',
        scn = 'sicilien',
        sco = 'scots',
        se = 'same du Nord',
        sh = 'serbo-croate',
        si = 'cingalais',
        simple = 'Simple English',
        sk = 'slovaque',
        sl = 'slovène',
        so = 'somali',
        sq = 'albanais',
        sr = 'serbe',
        stq = 'frison oriental',
        su = 'sondonésien',
        sv = 'suédois',
        sw = 'swahili',
        sxu = 'haut-saxon',
        syr = 'syriaque',
        ta = 'tamoul',
        te = 'télougou',
        tg = 'tadjik',
        th = 'thaï',
        tk = 'turkmène',
        tl = 'tagalog',
        to = 'tonguien',
        tpi = 'tok pisin',
        tr = 'turc',
        tt = 'tatar',
        tun = 'Tunica (langue){{!}}tunica',
        tyv = 'touvain',
        ua = 'ukrainien',
        udm = 'oudmourte',
        uk = 'ukrainien',
        ur = 'ourdou',
        uz = 'ouzbek',
        vec = 'vénitien',
        vi = 'vietnamien',
        vo = 'volapük',
        wa = 'wallon',
        war = 'waray-waray',
        xh = 'xhosa',
        yi = 'yiddish',
        yo = 'yoruba',
        zea = 'zélandais',
        zh = 'Langues chinoises{{!}}chinois',
        ['zh-Hans'] = 'Sinogramme simplifié{{!}}chinois simplifié',
        ['zh-Hant'] = 'Sinogramme traditionnel{{!}}chinois traditionnel',
        ['zh-Latn'] = 'pinyin',
        ['zh-min-nan'] = 'minnan',
        ['zh-yue'] = 'cantonais',
        zu = 'zoulou'
    },
 
    languesRtl = { 'ar', 'arabe', 'div', 'divéhi', 'he', 'iw', 'hébreu', 'ur', 'ourdou', 'fa', 'persan', 'syr', 'syriaque', 'yi', 'ji', 'yiddish' }
}

return datalangue