﻿// ***************************************************************************
// *
// * Copyright (C) 2014 International Business Machines
// * Corporation and others. All Rights Reserved.
// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
// * Source File: <path>/common/main/eu.xml
// *
// ***************************************************************************
/**
 * ICU <specials> source: <path>/common/main/eu.xml
 */
eu{
    Keys{
        calendar{"Egutegia"}
        colAlternate{"Egin ez ikusi ikurren ordenari"}
        colBackwards{"Azentuen alderantzizko ordena"}
        colCaseFirst{"Maiuskula/Minuskula ordena"}
        colCaseLevel{"Maiuskulak eta minuskulak bereizten dituen ordena"}
        colHiraganaQuaternary{"Kana ordena"}
        colNormalization{"Araututako ordena"}
        colNumeric{"Zenbakizko ordena"}
        colStrength{"Ordenaren sendotasuna"}
        collation{"Ordenatzeko irizpidea"}
        currency{"Moneta"}
        numbers{"Zenbakiak"}
        timezone{"Ordu-zona"}
        va{"Eskualdeko ezarpenen aldaera"}
        variableTop{"Ordenatu ikur gisa"}
        x{"Erabilera pribatua"}
    }
    Languages{
        ab{"abkhazera"}
        ach{"Acholiera"}
        af{"afrikaansa"}
        ak{"Akanera"}
        am{"amharera"}
        ar{"arabiera"}
        ar_001{"arabiera moderno estandarra"}
        as{"assamera"}
        ay{"aimara"}
        az{"azerbaijanera"}
        be{"bielorrusiera"}
        bem{"Bembera"}
        bg{"bulgariera"}
        bn{"bengalera"}
        bo{"tibetera"}
        br{"Bretoiera"}
        bs{"bosniera"}
        ca{"katalana"}
        chr{"Txerokiera"}
        ckb{"Soraniera"}
        co{"Korsikera"}
        cs{"txekiera"}
        cy{"galesera"}
        da{"daniera"}
        de{"alemana"}
        de_CH{"aleman garaia (Suitza)"}
        dv{"divehiera"}
        dz{"dzongkha"}
        ee{"Eweera"}
        efi{"efikera"}
        el{"greziera"}
        en{"ingelesa"}
        en_US{"ingelesa (AEB)"}
        eo{"esperantoa"}
        es{"espainiera"}
        es_ES{"espainiera (Europa)"}
        et{"estoniera"}
        eu{"euskara"}
        fa{"persiera"}
        fi{"finlandiera"}
        fil{"tagaloga"}
        fj{"fijiera"}
        fo{"faroera"}
        fr{"frantsesa"}
        fy{"frisiera"}
        ga{"gaelikoa"}
        gaa{"Ga"}
        gd{"eskoziako gaelikoa"}
        gl{"galiziera"}
        gn{"guaraniera"}
        gsw{"alemana (Suitza)"}
        gu{"gujaratera"}
        ha{"hausa"}
        haw{"hawaiiera"}
        he{"hebreera"}
        hi{"hindia"}
        hr{"kroaziera"}
        ht{"haitiera"}
        hu{"hungariera"}
        hy{"armeniera"}
        ia{"Interlingua"}
        id{"indonesiera"}
        ie{"interlingue"}
        ig{"igboera"}
        is{"islandiera"}
        it{"italiera"}
        ja{"japoniera"}
        jv{"javera"}
        ka{"georgiera"}
        kg{"Kikongoa"}
        kk{"kazakhera"}
        km{"khemerera"}
        kn{"kannadera"}
        ko{"koreera"}
        ks{"kashmirera"}
        ku{"kurduera"}
        ky{"kirgizera"}
        la{"latina"}
        lb{"luxenburgera"}
        lg{"Gandera"}
        ln{"lingala"}
        lo{"laosera"}
        loz{"Loziera"}
        lt{"lituaniera"}
        lua{"Luba-lulua"}
        lv{"letoniera"}
        mfe{"Mauritaniako kreolera"}
        mg{"malagasyera"}
        mi{"maoriera"}
        mk{"mazedoniera"}
        ml{"malayalamera"}
        mn{"mongoliera"}
        mr{"marathera"}
        ms{"malaysiera"}
        mt{"maltera"}
        mul{"hizkuntza anitzak"}
        my{"burmatarra"}
        nb{"bokmala (Norvegia)"}
        nd{"iparraldeko ndebeleera"}
        ne{"nepalera"}
        nl{"nederlandera"}
        nl_BE{"flandriera"}
        nn{"nynorsk norvegiera"}
        no{"norvegiera"}
        nso{"pediera"}
        ny{"nyanja"}
        nyn{"Ankolera"}
        oc{"Okzitaniera"}
        om{"Oromoera"}
        or{"oriyera"}
        os{"osetiera"}
        pa{"punjabera"}
        pl{"poloniera"}
        ps{"paxtuera"}
        pt{"portugesa"}
        pt_PT{"portugesa (Europa)"}
        qu{"quechuera"}
        rm{"erromantxera"}
        rn{"rundiera"}
        ro{"errumaniera"}
        ru{"errusiera"}
        rw{"kinyaruanda"}
        sa{"sanskritoa"}
        sd{"sindhia"}
        se{"iparraldeko samiera"}
        sg{"sangoera"}
        sh{"serbokroaziera"}
        si{"sinhala"}
        sk{"eslovakiera"}
        sl{"esloveniera"}
        sm{"samoera"}
        sn{"shonera"}
        so{"somaliera"}
        sq{"albaniera"}
        sr{"serbiera"}
        ss{"swatiera"}
        st{"hegoaldeko sothoera"}
        su{"sundanera"}
        sv{"suediera"}
        sw{"swahili"}
        ta{"tamilera"}
        te{"teluguera"}
        tet{"tetuma"}
        tg{"tajikistanera"}
        th{"thailandiera"}
        ti{"tigriñera"}
        tk{"turkmeniera"}
        tl{"tagalog"}
        tlh{"Klingonera"}
        tn{"tswanera"}
        to{"tongera"}
        tpi{"tok pisina"}
        tr{"turkiera"}
        ts{"tsongera"}
        tt{"tatarera"}
        tum{"Tumbukera"}
        tw{"twia"}
        ty{"tahitiera"}
        ug{"uigurrera"}
        uk{"ukrainera"}
        und{"hizkuntza ezezaguna"}
        ur{"urdua"}
        uz{"uzbekera"}
        ve{"vendera"}
        vi{"vietnamera"}
        wo{"wolofera"}
        xh{"xhosera"}
        yi{"Jiddisha"}
        yo{"yorubera"}
        zgh{"tamazight estandarra"}
        zh{"txinera"}
        zh_Hans{"txinera soildua"}
        zh_Hant{"txinera tradizionala"}
        zu{"zuluera"}
        zxx{"ez dago eduki linguistikorik"}
    }
    LanguagesShort{
        az{"azeriera"}
    }
    Scripts{
        Arab{"arabiarra"}
        Armn{"armeniera"}
        Beng{"bengalera"}
        Bopo{"bopomofoa"}
        Brai{"braillea"}
        Cyrl{"zirilikoa"}
        Deva{"devanagaria"}
        Ethi{"etiopiarra"}
        Geor{"georgiera"}
        Grek{"greziera"}
        Gujr{"gujaratera"}
        Guru{"gurmukhia"}
        Hang{"hangula"}
        Hani{"idazkera txinatarra"}
        Hans{"sinplifikatua"}
        Hant{"tradizionala"}
        Hebr{"hebreera"}
        Hira{"hiragana"}
        Jpan{"japoniera"}
        Kana{"katakana"}
        Khmr{"khemerera"}
        Knda{"kannadera"}
        Kore{"koreera"}
        Laoo{"laosera"}
        Latn{"latina"}
        Mlym{"malayalamera"}
        Mong{"mongoliera"}
        Mymr{"birmaniera"}
        Orya{"oriya"}
        Sinh{"sinhala"}
        Taml{"tamilera"}
        Telu{"teluguera"}
        Thaa{"thaana"}
        Thai{"thailandiera"}
        Tibt{"tibetera"}
        Zsym{"ikurrak"}
        Zxxx{"idatzi gabea"}
        Zyyy{"ohikoa"}
        Zzzz{"idazkera ezezaguna"}
    }
    Scripts%stand-alone{
        Hans{"idazkera txinatar sinplifikatua"}
        Hant{"idazkera txinatar tradizionala"}
    }
    Types{
        calendar{
            buddhist{"Egutegi budista"}
            chinese{"Txinatar egutegia"}
            coptic{"Egutegi coptiarra"}
            ethiopic{"Egutegi etiopiarra"}
            ethiopic-amete-alem{"Amete Alem egutegi etiopiarra"}
            gregorian{"Egutegi gregoriarra"}
            hebrew{"Hebrear egutegia"}
            indian{"Indiar egutegia"}
            islamic{"Islamiar egutegia"}
            islamic-civil{"Islamiar egutegi zibila"}
            japanese{"Japoniar egutegia"}
            persian{"Egutegi persiarra"}
            roc{"Txinako Errepublikako egutegia"}
        }
        colAlternate{
            non-ignorable{"Ordenatu ikurrak"}
            shifted{"Ordenatu ikurrei ez ikusi eginda"}
        }
        colBackwards{
            no{"Ordenatu azentuak modu normalean"}
            yes{"Ordenatu azentuak alderantziz"}
        }
        colCaseFirst{
            lower{"Ordenatu minuskulak lehenik"}
            no{"Ordenatu maiuskulak modu normalean"}
            upper{"Ordenatu maiuskulak lehenik"}
        }
        colCaseLevel{
            no{"Ordenatu maiuskulak eta minuskulak bereizi gabe"}
            yes{"Ordenatu maiuskulak eta minuskulak bereizita"}
        }
        colHiraganaQuaternary{
            no{"Ordenatu kanak bereizita"}
            yes{"Ordenatu kanak desberdin"}
        }
        colNormalization{
            no{"Ordenatu arauak kontuan hartu gabe"}
            yes{"Ordenatu Unicode arauen arabera"}
        }
        colNumeric{
            no{"Ordenatu digituak banaka"}
            yes{"Ordenatu digituak zenbakien arabera"}
        }
        colStrength{
            identical{"Ordenatu guztiak"}
            primary{"Ordenatu oinarrizko hizkiak soilik"}
            quaternary{"Ordenatu azentuak / maiuskula eta minuskulak / zabalera / kanak"}
            secondary{"Ordenatu azentuak"}
            tertiary{"Ordenatu azentuak / maiuskula eta minuskulak / zabalera"}
        }
        collation{
            big5han{"Txinera tradizionalaren alfabetoa-Big5"}
            dictionary{"Hurrenkera alfabetikoa"}
            ducet{"Unicode hurrenkera lehenetsia"}
            gb2312han{"Txinera sinplifikatuaren alfabetoa -GB2312"}
            phonebook{"Telefonoen zerrenda"}
            phonetic{"Ordenatzeko irizpide fonetikoa"}
            pinyin{"Pinyin hurrenkera"}
            reformed{"Erreformaren araberako hurrenkera"}
            search{"Bilaketa orokorra"}
            searchjl{"Bilatu hangularen lehen kontsonantearen arabera"}
            standard{"Ordenatzeko irizpide estandarra"}
            stroke{"Tarteen araberako hurrenkera"}
            traditional{"Tradizionala"}
            unihan{"Radical trazuen hurrenkera"}
        }
        numbers{
            arab{"Digitu arabiar-hindikoak"}
            arabext{"Digitu arabiar-hindiko hedatuak"}
            armn{"Zenbaki armeniarrak"}
            armnlow{"Zenbaki armeniarrak minuskulaz"}
            beng{"Digitu bengalarrak"}
            deva{"Digitu devanagariak"}
            ethi{"Zenbaki etiopiarrak"}
            finance{"Finantza-zenbakiak"}
            fullwide{"Zabalera osoko digituak"}
            geor{"Zenbaki georgiarrak"}
            grek{"Zenbaki grekoak"}
            greklow{"Zenbaki grekoak minuskulaz"}
            gujr{"Digitu gujaratarrak"}
            guru{"Digitu gurmukhiak"}
            hanidec{"Zenbaki hamartar txinatarrak"}
            hans{"Zenbaki txinatar sinplifikatuak"}
            hansfin{"Finantzetarako zenbaki txinatar sinplifikatuak"}
            hant{"Zenbaki txinatar tradizionalak"}
            hantfin{"Finantzetarako zenbaki txinatar tradizionalak"}
            hebr{"Zenbaki hebrearrak"}
            jpan{"Zenbaki japoniarrak"}
            jpanfin{"Finantzetarako zenbaki japoniarrak"}
            khmr{"Digitu khmerarrak"}
            knda{"Digitu kannadarrak"}
            laoo{"Digitu laostarrak"}
            latn{"Digitu mendebaldarrak"}
            mlym{"Digitu malayalamarrak"}
            mong{"Digitu mongoliarrak"}
            mymr{"Digitu birmaniarrak"}
            native{"Zenbaki-sistema"}
            orya{"Digitu oriyarrak"}
            roman{"Zenbaki erromatarrak"}
            romanlow{"Zenbaki erromatarrak minuskulaz"}
            taml{"Zenbaki tamilar tradizionalak"}
            tamldec{"Digitu tamilarrak"}
            telu{"Digitu teluguarrak"}
            thai{"Digitu thailandiarrak"}
            tibt{"Digitu tibetarrak"}
            traditional{"Zenbaki tradizionalak"}
            vaii{"Vai digituak"}
        }
    }
    Variants{
        POLYTON{"POLITON"}
        REVISED{"BERRIKUSIA"}
        SAAHO{"SAHO"}
        SCOTLAND{"ESKOZIAR INGELESA"}
        VALENCIA{"VALENTZIERA"}
    }
    Version{"2.0.97.91"}
    codePatterns{
        language{"{0}"}
        script{"{0}"}
        territory{"{0}"}
    }
    localeDisplayPattern{
        keyTypePattern{"{0}: {1}"}
        pattern{"{0} ({1})"}
        separator{"{0}, {1}"}
    }
}
